UNPKG

mailinator-client

Version:
37 lines (36 loc) 1.82 kB
import WebSocket = require('ws'); import { MessageSummary } from './MessageSummary'; declare const _resolveTemplateUrl: (baseUrl: string, domain: string, full?: boolean, limit?: number, throttleInterval?: string, del?: string) => string; export interface StreamDomainMessagesRequestOptions { baseUrl?: string; webSocketFactory?: StreamDomainMessagesWebSocketFactory; } export interface StreamDomainMessagesRequestHandlers { onMessage: (message: MessageSummary) => void; onOpen?: () => void; onError?: (error: Error) => void; onClose?: (code: number, reason: string) => void; } export interface StreamDomainMessagesConnection { close: (code?: number, reason?: string) => void; socket: StreamDomainMessagesWebSocket; } export interface StreamDomainMessagesWebSocket { on(event: 'open', listener: () => void): this; on(event: 'message', listener: (payload: WebSocket.RawData) => void): this; on(event: 'error', listener: (error: Error) => void): this; on(event: 'close', listener: (code: number, reason: Buffer) => void): this; close(code?: number, reason?: string): void; } export type StreamDomainMessagesWebSocketFactory = (url: string, apiToken: string) => StreamDomainMessagesWebSocket; export declare class StreamDomainMessagesRequest { private readonly domain; private readonly full?; private readonly limit?; private readonly throttleInterval?; private readonly del?; private readonly options; constructor(domain: string, full?: boolean | undefined, limit?: number | undefined, throttleInterval?: string | undefined, del?: string | undefined, options?: StreamDomainMessagesRequestOptions); execute(apiToken: string, handlers: StreamDomainMessagesRequestHandlers): StreamDomainMessagesConnection; } export { _resolveTemplateUrl };