import { Logger } from "../common/Logger"; export {}; import { DataStoreType } from "./config"; declare class Options { _logger: Logger; _options: any; _hasCredentials: any; _hasApplication: any; _httpOptions: any; _xmppOptions: any; _s2sOptions: any; _restOptions: any; _proxyoptions: any; _imOptions: any; _applicationOptions: any; _withXMPP: any; _withS2S: any; _CLIMode: any; _servicesToStart: any; private _testOutdatedVersion; private _testDNSentry; private _autoReconnectIgnoreErrors; private _httpoverxmppserver; private _concurrentRequests; private _intervalBetweenCleanMemoryCache; private _requestsRate; private _configIniData; constructor(_options: any, _logger: Logger); parse(): void; get testOutdatedVersion(): boolean; set testOutdatedVersion(value: boolean); get testDNSentry(): boolean; set testDNSentry(value: boolean); get autoReconnectIgnoreErrors(): boolean; set autoReconnectIgnoreErrors(value: boolean); get testhttpoverxmppserver(): boolean; set testhttpoverxmppserver(value: boolean); get intervalBetweenCleanMemoryCache(): number; set intervalBetweenCleanMemoryCache(value: number); get servicesToStart(): any; get httpOptions(): any; get xmppOptions(): any; get s2sOptions(): any; get restOptions(): any; get proxyOptions(): any; get imOptions(): any; get applicationOptions(): any; get hasCredentials(): any; get hasApplication(): any; get useXMPP(): any; get useS2S(): any; get useCLIMode(): any; get credentials(): any; get concurrentRequests(): number; get requestsRate(): { "useRequestRateLimiter": number; "maxReqByIntervalForRequestRate": number; "intervalForRequestRate": number; "timeoutRequestForRequestRate": number; }; _gettestOutdatedVersion(): boolean; _gettestDNSentry(): boolean; _getautoReconnectIgnoreErrors(): boolean; _gethttpoverxmppserver(): boolean; _getintervalBetweenCleanMemoryCache(): any; _getservicesToStart(): {}; _isOfficialRainbow(): boolean; _getHTTPOptions(): { host: string; port: string; protocol: string; }; _getXMPPOptions(): { host: string; port: string; protocol: string; timeBetweenXmppRequests: string; raiseLowLevelXmppInEvent: boolean; raiseLowLevelXmppOutReq: boolean; maxIdleTimer: number; maxPingAnswerTimer: number; xmppRessourceName: any; maxPendingAsyncLockXmppQueue: number; stanzaMaxLength: number; }; _getS2SOptions(): { hostCallback: string; locallistenningport: string; expressEngine: any; }; _getRESTOptions(): { useRestAtStartup: boolean; useGotLibForHttp: boolean; gotOptions: { agentOptions: { keepAlive: boolean; keepAliveMsecs: number; maxSockets: number; maxTotalSockets: number; maxFreeSockets: number; timeout: number; rejectUnauthorized: boolean; }; gotRequestOptions: { timeout: { lookup: number; connect: number; secureConnect: number; socket: number; send: number; response: number; }; }; }; }; _getModeOption(): string; _getRequestsRateOption(): { useRequestRateLimiter: boolean; maxReqByIntervalForRequestRate: number; intervalForRequestRate: number; timeoutRequestForRequestRate: number; }; _getProxyOptions(): { protocol: string; host: string; port: number; user: any; password: any; secureProtocol: any; }; _getIMOptions(): { sendReadReceipt: boolean; messageMaxLength: number; sendMessageToConnectedUser: boolean; conversationsRetrievedFormat: string; storeMessages: boolean; copyMessage: boolean; nbMaxConversations: number; rateLimitPerHour: number; messagesDataStore: DataStoreType; autoInitialGetBubbles: boolean; autoInitialBubblePresence: boolean; maxBubbleJoinInProgress: number; autoInitialBubbleFormat: string; autoInitialBubbleUnsubscribed: boolean; autoLoadConversations: boolean; autoLoadConversationHistory: boolean; autoLoadContacts: boolean; autoInitialLoadContactsInfoBulk: boolean; autoLoadCallLog: boolean; forceHistoryGetContactFromServer: boolean; enableCarbon: boolean; enablesendurgentpushmessages: boolean; useMessageEditionAndDeletionV2: boolean; storeMessagesInConversation: boolean; maxMessagesStoredInConversation: number; }; _getApplicationsOptions(): { appID: string; appSecret: string; }; } export { Options };