import { GraphQLSchema } from "graphql"; import { StrategyCollection } from "./StrategyCollection"; import { Strategy } from "./Strategy"; export interface Config { readonly realm: string; readonly base: string; readonly privateKey: string; readonly publicKeys: string[]; readonly codeValidityDuration: number; readonly jwtValidityDuration: number; readonly strategies: StrategyCollection | Strategy[]; readonly pg: { readonly database?: string; readonly host?: string; readonly idleTimeoutMillis?: number; readonly max?: number; readonly password?: string; readonly port?: number; readonly ssl?: boolean; readonly user?: string; }; readonly sendMail: (options: { readonly to: string; readonly subject: string; readonly text: string; readonly html: string; readonly from?: string; }) => Promise; readonly processSchema?: (schema: GraphQLSchema) => GraphQLSchema; } export declare function assertConfig(config: Config): void;