@waylis/core / ServerConfig
Interface: ServerConfig
Defined in: src/server/config.ts:7
Properties
app
app: {
description?: string;
faviconURL?: string;
name?: string;
};
Defined in: src/server/config.ts:18
Your app metadata
description?
optional description: string;
Description for your application
faviconURL?
optional faviconURL: string;
URL to web page icon
name?
optional name: string;
The name of your application
auth
auth: {
handler: (req: IncomingMessage, res: ServerResponse) => Promise<void>;
logoutHandler: (req: IncomingMessage, res: ServerResponse) => Promise<void>;
middleware: (req: IncomingMessage) => Promise<string>;
};
Defined in: src/server/config.ts:28
Authentication configuration
handler()
handler: (req: IncomingMessage, res: ServerResponse) => Promise<void>;
Authentication (login) handler that attach unique user ID via cookies
Parameters
req
IncomingMessage
res
ServerResponse
Returns
Promise
<void
>
logoutHandler()
logoutHandler: (req: IncomingMessage, res: ServerResponse) => Promise<void>;
Handler that clear the authentication cookie
Parameters
req
IncomingMessage
res
ServerResponse
Returns
Promise
<void
>
middleware()
middleware: (req: IncomingMessage) => Promise<string>;
Authentication middleware that returns user ID or throws
Parameters
req
IncomingMessage
Returns
Promise
<string
>
chatNameGenerator()
chatNameGenerator: () => string;
Defined in: src/server/config.ts:15
Default function for generating chat names, unless explicitly specified by the user
Returns
string
cleanup
cleanup: {
fileTTL: number;
interval: number;
messageTTL: number;
};
Defined in: src/server/config.ts:38
Cleanup-related configuration
fileTTL
fileTTL: number;
How long (in seconds) uploaded files should be kept before automatic cleanup
interval
interval: number;
Interval (in seconds) for cleaning tasks
messageTTL
messageTTL: number;
How long (in seconds) messages should be kept before automatic cleanup
defaultPageLimit
defaultPageLimit: number;
Defined in: src/server/config.ts:11
Default number of items per page for paginated endpoints
idGenerator()
idGenerator: () => string;
Defined in: src/server/config.ts:13
Default function for generating unique identifiers
Returns
string
limits
limits: {
maxChatsPerUser: number;
};
Defined in: src/server/config.ts:48
System limits and constraints
maxChatsPerUser
maxChatsPerUser: number;
Maximum number of chats a single user can create
port
port: number;
Defined in: src/server/config.ts:9
Port number the server should listen on
sse
sse: {
heartbeatInterval: number;
};
Defined in: src/server/config.ts:54
SSE configuration
heartbeatInterval
heartbeatInterval: number;
Interval (in seconds) for Server-sent Events heartbeat messages