import * as Tp from 'thingpedia'; import TwilioNotificationBackend from './twilio'; import EmailNotificationBackend from './email'; export declare type NotificationDelegate = Tp.BaseDevice.NotificationInterface; export declare const StaticNotificationBackends: { twilio: typeof TwilioNotificationBackend; email: typeof EmailNotificationBackend; }; export declare type NotificationConfig = { [T in keyof typeof StaticNotificationBackends]?: ConstructorParameters<(typeof StaticNotificationBackends)[T]>[1]; }; /** * Helper class to adapt a Thingpedia device into a notification backend. */ export declare class ThingpediaNotificationBackend implements Tp.Capabilities.NotificationBackend { private _iface; name: string; uniqueId: string; constructor(device: Tp.BaseDevice); get requiredSettings(): {}; notify(data: { appId: string; icon: string | null; raw: Record; type: string; formatted: Tp.FormatObjects.FormattedObject[]; }): Promise; notifyError(data: { appId: string; icon: string | null; error: Error; }): Promise; }