import { type ServerInstanceIdentity, type ServerProfileIdentity } from "./protocol.js"; import { type FastifyInstance, type FastifyServerOptions } from "fastify"; import { type FcmSender } from "./services/fcmSender.js"; import { type PushSender } from "./services/pushNotifier.js"; export interface CreatePostboxAppOptions { loadChatModels?: typeof import("./services/modelCatalog.js").loadAvailableChatModels; logger?: FastifyServerOptions["logger"]; startedAtMs?: number; now?: () => number; version?: string; buildId?: string; profile?: ServerProfileIdentity; uiDistDir?: string; databasePath?: string; staleAfterMs?: number; offlineAfterMs?: number; sessionHideOfflineAfterMs?: number; sessionRetentionMs?: number; expirySweepMs?: number; bodyLimitBytes?: number; websocketMaxPayloadBytes?: number; compressionThresholdBytes?: number; chatCommandTimeoutMs?: number; chatCommandRateLimitMax?: number; chatCommandRateLimitWindowMs?: number; chatCommandDedupeTtlMs?: number; chatCommandDedupeCapacity?: number; vapidPublicKey?: string; vapidPrivateKey?: string; pushSender?: PushSender; fcmSender?: FcmSender; fcmServiceAccountPath?: string; serverInstance?: () => ServerInstanceIdentity | undefined; onShutdownRequest?: () => void; } export interface ServerInstanceAwareApp extends FastifyInstance { setServerInstance?: (identity: ServerInstanceIdentity | undefined) => void; } export declare function createPostboxApp(options?: CreatePostboxAppOptions): Promise; //# sourceMappingURL=app.d.ts.map