import { OzoneEnvironment } from './env';
export declare const envToCfg: (env: OzoneEnvironment) => OzoneConfig;
export type OzoneConfig = {
    service: ServiceConfig;
    db: DatabaseConfig;
    appview: AppviewConfig;
    pds: PdsConfig | null;
    chat: ChatConfig | null;
    cdn: CdnConfig;
    identity: IdentityConfig;
    blobDivert: BlobDivertConfig | null;
    access: AccessConfig;
    jetstreamUrl?: string;
    verifier: VerifierConfig | null;
};
export type ServiceConfig = {
    port: number;
    publicUrl: string;
    did: string;
    version?: string;
    devMode?: boolean;
    serviceRecordCacheTTL: number;
};
export type BlobDivertConfig = {
    url: string;
    adminPassword: string;
};
export type DatabaseConfig = {
    postgresUrl: string;
    postgresSchema?: string;
    poolSize?: number;
    poolMaxUses?: number;
    poolIdleTimeoutMs?: number;
    materializedViewRefreshIntervalMs?: number;
    teamProfileRefreshIntervalMs?: number;
};
export type AppviewConfig = {
    url: string;
    did: string;
    pushEvents: boolean;
};
export type PdsConfig = {
    url: string;
    did: string;
};
export type ChatConfig = {
    url: string;
    did: string;
};
export type CdnConfig = {
    paths?: string[];
};
export type IdentityConfig = {
    plcUrl: string;
    cacheStaleTTL: number;
    cacheMaxTTL: number;
};
export type AccessConfig = {
    admins: string[];
    moderators: string[];
    triage: string[];
};
export type VerifierConfig = {
    url: string;
    did: string;
    password: string;
    jetstreamUrl?: string;
    issuersToIndex?: string[];
};
//# sourceMappingURL=config.d.ts.map