import * as Tp from 'thingpedia'; import * as ThingTalk from 'thingtalk'; import Engine from '../../engine'; /** * An object that is able to convert structured ThingTalk results * into a textual representation suitable to send as a notification * or a message. * * This is used to implement `$result` ThingTalk, and to dispatch * notifications to third-party services like Twilio. * * Internally, it uses the transaction state machine, which is * instantiated with a special state for every result. */ export default class NotificationFormatter { private _engine; private _cardFormatter; private _policy; private _executor; private _langPack; /** * Construct a new formatter for a given Genie engine. */ constructor(engine: Engine); initialize(): Promise; formatNotification(appName: string | null, program: ThingTalk.Ast.Program, outputType: string, outputValue: Record): Promise; }