import Engine from '@machinat/core/engine'; import type { MachinatNode, MachinatBot, InitScopeFn, DispatchWrapper } from '@machinat/core'; import MessengerWorker from './Worker'; import type { MessengerChannel, MessengerTarget, MessengerComponent, MessengerJob, MessengerResult, MessengerSegmentValue, MessengerDispatchFrame, MessengerDispatchResponse, MessengerSendOptions, FbGraphApiResult } from './types'; declare type MessengerBotOptions = { initScope?: InitScopeFn; dispatchWrapper?: DispatchWrapper; pageId: string; accessToken: string; appSecret?: string; graphApiVersion?: string; apiBatchRequestInterval?: number; }; /** * MessengerBot render messages and make API call to Messenger platform. * @category Provider */ export declare class MessengerBot implements MachinatBot { pageId: string; worker: MessengerWorker; engine: Engine, MessengerJob, MessengerResult>; platform: "messenger"; constructor({ pageId, accessToken, appSecret, graphApiVersion, apiBatchRequestInterval, initScope, dispatchWrapper, }: MessengerBotOptions); start(): Promise; stop(): Promise; render(target: string | MessengerTarget | MessengerChannel, messages: MachinatNode, options?: MessengerSendOptions): Promise; renderAttachment(node: MachinatNode): Promise; makeApiCall(method: 'GET' | 'POST' | 'DELETE', relativeUrl: string, body?: null | unknown): Promise; } declare const BotP: import("@machinat/core/service").ServiceProvider & typeof MessengerBot; declare type BotP = MessengerBot; export default BotP;