import { CallingCallDetectType, Detector, DetectorResult, Promisify } from '@signalwire/core';
import { Call } from '../Call';
import { CallDetect } from './CallDetect';
import { CallDetectListeners } from '../../types';
export interface CallDetectEnded {
    id: string;
    callId: string;
    nodeId: string;
    controlId: string;
    detect?: Detector;
    type?: CallingCallDetectType;
    result: DetectorResult;
    waitForBeep: boolean;
    beep?: boolean;
}
export interface CallDetectPromise extends Promise<CallDetectEnded>, Promisify<CallDetectEnded> {
    onStarted: () => Promise<CallDetect>;
    onEnded: () => Promise<CallDetectEnded>;
    listen: (listeners: CallDetectListeners) => Promise<() => Promise<void>>;
    stop: () => Promise<CallDetect>;
    ended: () => Promise<CallDetect>;
}
export declare const getters: string[];
export declare const methods: string[];
export declare function decorateDetectPromise(this: Call, innerPromise: Promise<CallDetect>): CallDetectPromise;
//# sourceMappingURL=decorateDetectPromise.d.ts.map