import { Nullable } from '@mlytics/core-ts/core/type/basic'; declare const kernelSettings: KernelSettings; type KernelSettings = { global: GlobalSettings; logger: LoggerSettings; webrtc: WebRTCSettings; client: ClientSettings; server: ServerSettings; system: SystemSettings; stream: StreamSettings; swproxy: SWProxySettings; monitor: MonitorSettings; download: DownloadSettings; software: SoftwareSettings; }; type GlobalSettings = { mode: string; accountID: string; streamID: string; streamType: string; clientID: string; clientKey: string; muxEnvKey: string; platform: Nullable; assets: Record; }; type PlatformSettings = { details: PlatformDetail[]; }; type PlatformDetail = { id: string; providerID: string; type: string; name: string; host: string; score: number; isEnabled: boolean; }; type AssetSettings = { id: string; tags: string[]; }; type LoggerSettings = { level: string; }; type WebRTCSettings = { options: RTCConfiguration; }; type ClientSettings = { id: Nullable; key: Nullable; token: Nullable; origin: Nullable; peerID: Nullable; accountID: Nullable; sessionID: Nullable; }; type ServerSettings = { host: { fqdn: string; version: string; }; token: { fqdn: Nullable; version: string; }; metering: { fqdn: Nullable; version: string; }; tracker: { fqdns: Nullable; version: string; }; }; type SystemSettings = { mode: Nullable; isP2PAllowed: boolean; }; type StreamSettings = { streamID: Nullable; streamType: Nullable; maxBufferSize: number; minBufferTime: number; maxBufferTime: number; }; type SWProxySettings = { scriptPath: Nullable; scriptScope: Nullable; }; type MonitorSettings = { muxEnvKey: Nullable; gtagTargetID: Nullable; sampleRate: number; isEnabled: boolean; }; type DownloadSettings = { maxCacheItems: number; maxP2PPossibility: number; httpResponseTimeout: number; }; type SoftwareSettings = { version: string; gitTag: string; gitCommit: string; }; export { kernelSettings, KernelSettings, GlobalSettings, PlatformSettings, PlatformDetail };