import { LadAccountModel, LadAPIUtils, SystemDocument } from "../index"; export interface LadClientSettings { termsPage: string; registrationPage?: string; otpRequiredOnRegistration?: boolean; appTitle: string; navbar: { title: string; titleClass: string; logoUrl: string; }; captchaPublicSiteKey?: string; loginPage?: string; version?: string; noCaching?: boolean; publicAccount?: LadAccountModel; accountRegistration?: boolean; forgetPasswordBtn?: boolean; thirdPartyLogin?: boolean; otpRequiredOnAccountUpdate?: boolean; } export interface LadServerConfigInterface { systemId: string; port: number; db: { url: string; name: string; }; enableCrossOrigin?: boolean; uploadsDirectory?: string; secureSessionKey: string; clientSettings?: LadClientSettings; postRegistrationFn?: (newAccount: LadAccountModel, utils: LadAPIUtils) => Promise; authenticationFn?: (loggedAccount: LadAccountModel, utils: LadAPIUtils) => Promise; baseDocs?: SystemDocument[] | Promise; enableSMS: boolean; getClientTopbarAvatar: (currentAccount: LadAccountModel, utils: LadAPIUtils) => Promise; getClientSidebarMenu: (currentAccount: LadAccountModel, utils: LadAPIUtils) => Promise; getCurrentUserMainPage: (currentAccount: LadAccountModel, utils: LadAPIUtils) => Promise; captchaPrivateSiteKey?: string; defaultSMSSenderName?: string; serverInitialisationFn: (utils: LadAPIUtils) => Promise; } export declare class LadServerConfig implements LadServerConfigInterface { systemId: string; db: { url: string; name: string; }; enableCrossOrigin: boolean; port: number; secureSessionKey: string; uploadsDirectory: string; clientSettings: LadClientSettings; postRegistrationFn: any; authenticationFn: any; baseDocs: any; enableSMS: boolean; captchaPrivateSiteKey: string; getClientTopbarAvatar: (currentAccount: LadAccountModel, utils: LadAPIUtils) => Promise; getClientSidebarMenu: (currentAccount: LadAccountModel, utils: LadAPIUtils) => Promise; getCurrentUserMainPage: (currentAccount: LadAccountModel, utils: LadAPIUtils) => Promise; serverInitialisationFn: (utils: LadAPIUtils) => Promise; defaultSMSSenderName?: string; jwtExpiration?: string; constructor(options: LadServerConfigInterface); } export interface LadClientSidebarRoute { path: string; title: string; icon: string; class: string; badge?: string; badgeClass?: string; isExternalLink: boolean; submenu: LadClientSidebarRoute[]; queryParams?: any; } export interface LadClientTopbarAvatar { name: string; role: string; avatarUrl: string; }