import { RPCBase } from "../rpcBase"; export type Table = { id: number; params: { table: U; }; result: boolean; }; export type Key = keyof Config; export type Config = { MediaEncrypt: { PrivateMediaEncrypt: { KeyFrameEncrypt: { Enable: boolean; VKUpdateTime: number; }; }; RTSPOverTls: { Enable: boolean; }; }; AutoMaintain: unknown; Network: unknown; Mobile: unknown; PPPoE: unknown; IPv6: unknown; ARP: unknown; Ping: unknown; DVRIP: unknown; Web: unknown; RTSP: { Enable: boolean; Port: number; RTP: { EndPort: number; StartPort: number; }; }; Https: unknown; UserGlobal: unknown; DDNS: unknown; AccessFilter: unknown; Email: { Address: string; Anonymous: boolean; AttachEnable: boolean; Authentication: boolean; CustomTitle: Array; Enable: boolean; HealthReport: { Enable: boolean; Interval: number; }; OnlyAttachment: boolean; Password: string; Port: number; Receivers: Array; SendAddress: string; SendInterv: number; SslEnable: boolean; Title: string; TlsEnable: boolean; UserName: string; }; UPnP: unknown; SNMP: unknown; Bonjour: { Enable: boolean; Name: string; }; Multicast: unknown; Wire802_1X: unknown; Qos: unknown; WMM: unknown; WLan: unknown; Wireless: unknown; AlarmServer: unknown; MacConflict: unknown; StorageNotExist: { Enable: boolean; EventHandler: { AlarmOut: number; AlarmOutChannels: Array; AlarmOutEnable: boolean; AlarmOutLatch: number; BeepEnable: boolean; Dejitter: number; Delay: number; ExAlarmOut: number; ExAlarmOutChannels: Array; ExAlarmOutEnable: boolean; LogEnable: boolean; MailEnable: boolean; Matrix: number; MatrixChannels: Array; MatrixEnable: boolean; MessageEnable: boolean; PtzLink: Array<[string, number]>; PtzLinkEnable: boolean; Record: number; RecordChannels: Array; RecordEnable: boolean; RecordLatch: number; Snapshot: number; SnapshotChannels: Array; SnapshotEnable: boolean; TimeSection: Array>; TipEnable: boolean; Tour: number; TourChannels: Array; TourEnable: boolean; VoiceEnable: boolean; }; }; StorageLowSpace: unknown; StorageFailure: unknown; NetAbort: unknown; IPConflict: unknown; LoginFailureAlarm: unknown; Alarm: unknown; RemoteCtrl: unknown; ExAlarm: unknown; ArmMode: unknown; AlarmOut: unknown; Encode: Array<{ ExtraFormat: Array<{ Audio: { Bitrate?: number; Channels?: Array; Compression: string; Depth?: number; Frequency?: number; Pack?: string; }; AudioEnable: boolean; Video: { BitRate: number; BitRateControl: string; Compression: string; CustomResolutionName?: string; FPS?: number; GOP?: number; Height: number; Pack?: string; Priority?: number; Profile: string; Quality?: number; QualityRange?: number; SVCTLayer?: number; Width: number; }; VideoEnable: boolean; }>; MainFormat: Array<{ Audio: { Bitrate: number; Channels: Array; Compression: string; Depth: number; Frequency: number; Mode: number; Pack: string; }; AudioEnable: boolean; Video: { BitRate: number; BitRateControl: string; Compression: string; CustomResolutionName: string; FPS: number; GOP: number; Height: number; Pack: string; Priority: number; Profile: string; Quality: number; QualityRange: number; SVCTLayer: number; SvacSVCLayer?: { SpaceDomainSVCLayer: number; TimeDomainSVCLayer: number; }; Width: number; }; VideoEnable: boolean; }>; SnapFormat: Array<{ Audio: { Bitrate: number; Compression: string; Depth: number; Frequency: number; Pack: string; }; AudioEnable: boolean; Video: { BitRate: number; BitRateControl: string; Compression: string; CustomResolutionName: string; FPS: number; GOP: number; Height: number; Pack: string; Priority: number; Profile: string; Quality: number; QualityRange: number; SVCTLayer: number; Width: number; }; VideoEnable: boolean; }>; }>; VideoWaterMark: unknown; AudioInputVolume: unknown; AudioOutputVolume: unknown; AudioInDenoise: unknown; AudioInput: Array<{ AudioSource: "Mic" | string; }>; VideoWidget: unknown; ChannelTitle: unknown; VideoWidgetNumberStat: unknown; VideoInOptions: unknown; VideoColor: unknown; VideoInPreviewOptions: unknown; VideoInDefog: unknown; VideoImageControl: Array<{ Flip: boolean; Freeze: boolean; Mirror: boolean; Rotate90: number; Stable: number; }>; VideoInSharpness: unknown; VideoInExposure: unknown; VideoInDenoise: unknown; VideoInIRExposure: unknown; VideoInBacklight: unknown; VideoInWhiteBalance: unknown; VideoInDayNight: unknown; VideoInMode: Array<{ Config: Array; Mode: number; TimeSection: Array>; }>; MotionDetect: unknown; BlindDetect: unknown; UnFocusDetect: unknown; AudioDetect: unknown; LossDetect: unknown; MovedDetect: unknown; VideoAnalyseRule: unknown; VideoAnalyseGlobal: unknown; VideoAnalyseModule: unknown; TrafficSnapshot: unknown; Holiday: unknown; Record: unknown; Snap: unknown; RecordStoragePoint: unknown; MediaGlobal: unknown; RecordMode: unknown; StorageGroup: unknown; NAS: unknown; StorageGlobal: unknown; Ptz: unknown; General: unknown; Locales: unknown; NTP: { Address: string; Enable: boolean; Port: number; TimeZone: number; TimeZoneDesc: string; UpdatePeriod: number; }; VideoEncodeROI: unknown; VideoInFocus: unknown; VideoInZoom: unknown; VideoInColor: unknown; NetAlarm: unknown; ExAlarmOut: unknown; Sound: unknown; SmartEncode: Array<{ Enable: boolean; }>; Comm: unknown; Lighting: unknown; VideoOut: unknown; DeviceInfo: unknown; EmergencyRecordForPull: unknown; EncodeAuth: unknown; EncodeEncrypt: Array<{ ExtraFormat: Array<{ Audio: { Bitrate?: number; Channels?: Array; Compression: string; Depth?: number; Frequency?: number; Pack?: string; }; AudioEnable: boolean; Video: { BitRate: number; BitRateControl: string; Compression: string; CustomResolutionName?: string; FPS?: number; GOP?: number; Height: number; Pack?: string; Priority?: number; Profile: string; Quality?: number; QualityRange?: number; SVCTLayer?: number; Width: number; }; VideoEnable: boolean; }>; MainFormat: Array<{ Audio: { Bitrate: number; Channels: Array; Compression: string; Depth: number; Frequency: number; Mode: number; Pack: string; }; AudioEnable: boolean; Video: { BitRate: number; BitRateControl: string; Compression: string; CustomResolutionName: string; FPS: number; GOP: number; Height: number; Pack: string; Priority: number; Profile: string; Quality: number; QualityRange: number; SVCTLayer: number; SvacSVCLayer?: { SpaceDomainSVCLayer: number; TimeDomainSVCLayer: number; }; Width: number; }; VideoEnable: boolean; }>; SnapFormat: Array<{ Audio: { Bitrate: number; Compression: string; Depth: number; Frequency: number; Pack: string; }; AudioEnable: boolean; Video: { BitRate: number; BitRateControl: string; Compression: string; CustomResolutionName: string; FPS: number; GOP: number; Height: number; Pack: string; Priority: number; Profile: string; Quality: number; QualityRange: number; SVCTLayer: number; Width: number; }; VideoEnable: boolean; }>; }>; IntelliTrackScene: unknown; Language: unknown; MediaFileReaderGlobal: unknown; NetAccessPriority: unknown; PrivacyMasking: unknown; StorageQuota: unknown; Talkback: unknown; TwoRefEncode: unknown; VideoInFaceAutoExposure: unknown; VideoStandard: "NTSC" | "PAL" | string; WorkGroupMode: unknown; OSDSysAbnormal: unknown; T2UServer: unknown; VideoWidget2: unknown; }; export declare function ConfigManager(this: RPCBase): { /** * Get config by the given config name or names. */ getConfig: ((nameArray: [...Names], channel?: number, onlyLocal?: boolean) => Promise, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...any] : []] : []] : []] : []] : []] : []] : []] : []] : []] : []] : []>) & ((name: Name, channel?: number, onlyLocal?: boolean) => Promise) & ((name: Name_1, channelArray: number[], onlyLocal?: boolean) => Promise[]>); /** * Set config by the given config name or names. */ setConfig: ((nameArray: [...Names_1], table: Names_1 extends [infer Head_1, ...infer Tail_1] ? [Head_1 extends keyof Config ? Config[Head_1] : unknown, ...Tail_1 extends [infer Head_1, ...infer Tail_1] ? [Head_1 extends keyof Config ? Config[Head_1] : unknown, ...Tail_1 extends [infer Head_1, ...infer Tail_1] ? [Head_1 extends keyof Config ? Config[Head_1] : unknown, ...Tail_1 extends [infer Head_1, ...infer Tail_1] ? [Head_1 extends keyof Config ? Config[Head_1] : unknown, ...Tail_1 extends [infer Head_1, ...infer Tail_1] ? [Head_1 extends keyof Config ? Config[Head_1] : unknown, ...Tail_1 extends [infer Head_1, ...infer Tail_1] ? [Head_1 extends keyof Config ? Config[Head_1] : unknown, ...Tail_1 extends [infer Head_1, ...infer Tail_1] ? [Head_1 extends keyof Config ? Config[Head_1] : unknown, ...Tail_1 extends [infer Head_1, ...infer Tail_1] ? [Head_1 extends keyof Config ? Config[Head_1] : unknown, ...Tail_1 extends [infer Head_1, ...infer Tail_1] ? [Head_1 extends keyof Config ? Config[Head_1] : unknown, ...Tail_1 extends [infer Head_1, ...infer Tail_1] ? [Head_1 extends keyof Config ? Config[Head_1] : unknown, ...Tail_1 extends [infer Head_1, ...infer Tail_1] ? [Head_1 extends keyof Config ? Config[Head_1] : unknown, ...any] : []] : []] : []] : []] : []] : []] : []] : []] : []] : []] : [], channel?: number, onlyLocal?: boolean) => Promise) & ((name: Name_2, table: Config[Name_2], channel?: number, onlyLocal?: boolean) => Promise); /** * Get default config by the given config name or names. */ getDefault: ((nameArray: [...Names_2], channel?: number, _?: null, secure?: boolean) => Promise, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...Tail extends [infer Head, ...infer Tail] ? [Table, ...any] : []] : []] : []] : []] : []] : []] : []] : []] : []] : []] : []>) & ((name: Name_3, channel?: number, _?: null, secure?: boolean) => Promise) & ((name: Name_4, channelArray: number[], _?: null, secure?: boolean) => Promise[]>); setTemporaryConfig: (nameOrArray: string | string[], table: any, channel: number, onlyLocal: boolean | number) => Promise; restoreTemporaryConfig: (arrayOrName: string[] | string, channel: number) => Promise; /** * Restore configs by the given config names. */ restore: (names: Key[], options?: any) => Promise; /** * Restore everything EXCEPT the given config names. BE CAREFUL AS THIS WIPES EVERY CONFIG EXCEPT THE ONES YOU SPECIFY. */ restoreExcept: (names: Key[], options?: any) => Promise; deleteFile: () => Promise>; setChnlConfig: (name: string, table: any, channel: number, options: any) => Promise<{}>; saveFile: () => Promise>; }; //# sourceMappingURL=ConfigManager.d.ts.map