import { Subject } from "rxjs"; import { Vnd } from "@dawntech/dwntbots-models/vnd"; export interface BlipTransportConfig { to: string | null; from: string | null; base_uri: string; echo: string | null; interval: number | null; timeout: number; keepAlive: boolean; } export declare abstract class BlipTransport { protected config: BlipTransportConfig; constructor(config: BlipTransportConfig); abstract with(config?: Partial): BlipTransport; abstract withAuthorization(bot_key: string): BlipTransport; abstract sendCommand(command: Vnd.Lime.Transport.Payload.Request): Promise>; abstract sendMessage(message: Vnd.Lime.Transport.Payload.Message, confirmation?: boolean): Promise; abstract sendNotification(notification: Vnd.Lime.Transport.Payload.Notification): Promise; } export declare class HttpTransport extends BlipTransport { private BOT_URL; private BOT_KEY; private http; constructor(BOT_URL: string, BOT_KEY: string, _config?: Partial); static createRequest(cmd: Vnd.Lime.Transport.Payload.Request): Vnd.Lime.Command.Request; static createError(cmd: Vnd.Lime.Command.Response): { reason: Vnd.Lime.Reason; info: Error; } | null; with(config?: Partial): HttpTransport; withAuthorization(bot_key: string): HttpTransport; sendCommand(command: Vnd.Lime.Transport.Payload.Request): Promise>; static createErrorMessage(msg: Vnd.Lime.Transport.HTTP.Message): Vnd.Lime.Transport.HTTP.Notification; getMessageNotification(message: Vnd.Lime.Transport.HTTP.Message, interval?: number, timeout?: number): import("rxjs").Observable<{ message: Vnd.Lime.Transport.HTTP.Message; notification: Vnd.Lime.Transport.Payload.Notification; }>; sendMessage(message: Vnd.Lime.Transport.Payload.Message, confirmation?: boolean): Promise; sendNotification(notification: Vnd.Lime.Transport.Payload.Notification): Promise; } export declare class WsTransport extends BlipTransport { private ws$; constructor(ws$: Subject, _config?: Partial); static transposeChannel(channel: Vnd.Lime.Transport.WS.Channel): Vnd.Lime.Transport.WS.Channel; static createErrorRequest(cmd: Vnd.Lime.Transport.WS.Request): Vnd.Lime.Transport.WS.Response; static createErrorMessage(msg: Vnd.Lime.Transport.WS.Message): Vnd.Lime.Transport.WS.Notification; static createEchoMessage(msg: Vnd.Lime.Transport.WS.Message): Vnd.Lime.Transport.WS.Message; static createNotification(msg: Vnd.Lime.Transport.WS.Message): Vnd.Lime.Transport.WS.Notification; static matchRequest(ws$: Subject, request: Vnd.Lime.Transport.WS.Request, timeout?: number): import("rxjs").Observable<{ request: Vnd.Lime.Transport.WS.Request; response: Vnd.Lime.Transport.WS.Response; }>; static matchMessage(ws$: Subject, message: Vnd.Lime.Transport.WS.Message, state?: Vnd.Lime.Event, timeout?: number): import("rxjs").Observable<{ message: Vnd.Lime.Transport.WS.Message; notification: Vnd.Lime.Transport.WS.Notification; }>; static filterByRequestUri(payload: Vnd.Lime.Transport.WS.Payload, uriPattern: string): boolean; static filterByResponseUri(payload: Vnd.Lime.Transport.WS.Payload, uriPattern: string): boolean; with(config?: BlipTransportConfig): WsTransport; withAuthorization(bot_key: string): WsTransport; sendCommand(command: Vnd.Lime.Transport.Payload.Request): Promise>; sendMessage(message: Vnd.Lime.Transport.Payload.Message): Promise; sendNotification(notification: Vnd.Lime.Transport.Payload.Notification): Promise; }