/// import { CPluginClient, IPlugin } from '@bettercorp/service-base/lib/interfaces/plugins'; import { Readable } from 'stream'; import { Device, DeviceAction, Fault, IBCDeviceActionR, TR069ConnectionInfo, TR069EARGetFileType, TR069EARGetUploadFileUrlResponse, TRFile, TRFileResp, TRFileType, TRUploadedFile } from '../../lib'; import { IPluginConfig } from './sec.config'; export declare class tr069 extends CPluginClient { readonly _pluginName: string; devices: tr069Devices; groups: tr069Groups; actions: tr069Actions; events: tr069Events; faults: tr069Faults; files: tr069Files; constructor(uSelf: IPlugin); } export interface tr069UploadedFile extends TRUploadedFile { downUrl: string; } export interface tr069FileDownloaded extends TRFileResp { time: number; ip: string; } export interface tr069DeviceInformed { deviceId: string; groupId: string; time: number; ip: string; } export declare class tr069Events extends CPluginClient { readonly _pluginName: string; deviceFileDownloaded(listener: { (data: tr069FileDownloaded): Promise; }): Promise; deviceInformed(listener: { (data: tr069DeviceInformed): Promise; }): Promise; deviceActionAdded(listener: { (data: DeviceAction): Promise; }): Promise; deviceActionCompleted(listener: { (data: DeviceAction): Promise; }): Promise; deviceActionTriggered(listener: { (data: DeviceAction): Promise; }): Promise; deviceAdded(listener: { (data: Device): Promise; }): Promise; deviceAdopted(listener: { (data: Device): Promise; }): Promise; faultReceived(listener: { (data: Fault): Promise; }): Promise; deviceFileUploaded(listener: { (data: tr069UploadedFile): Promise; }): Promise; } export declare class tr069Devices extends CPluginClient { readonly _pluginName: string; get(id: string): Promise; adopt(id: string): Promise; } export declare class tr069Groups extends CPluginClient { readonly _pluginName: string; update(sourceGroupId: string, sourcePlugin: string, autoAdopt: boolean): Promise; getConnectionInformation(sourceGroupId: string, sourcePlugin: string): Promise; } export declare class tr069Actions extends CPluginClient { readonly _pluginName: string; add(deviceId: string, groupId: string, action: IBCDeviceActionR): Promise>; } export declare class tr069Faults extends CPluginClient { readonly _pluginName: string; } export declare class tr069Files extends CPluginClient { readonly _pluginName: string; readyForDeviceUpload(type: TRFileType, groupId: string, deviceId: string): Promise; add(filename: string, type: TRFileType, stream: Readable, groupId?: string, deviceId?: string, note?: string): Promise; get(type: TR069EARGetFileType, filename: String, key: String, deviceId: string, id: string, groupId: string, tenantId: string): Promise; }