import AbstractProcessor from '../AbstractProcessor';
import Registration from './generic/registration';
import type { WampMessage } from '../../types/Protocol';
import type { CallHandler } from '../../types/Connection';
import type { WampDict, WampList } from '../../types/messages/MessageTypes';
import type { RegisterOptions } from '../../types/messages/RegisterMessage';
declare class Callee extends AbstractProcessor {
    static getFeatures(): WampDict;
    private _registrations;
    private _runningCalls;
    private _registrationRequests;
    private _unregistrationsRequests;
    register<A extends WampList, K extends WampDict, T = any>(uri: string, handler: CallHandler<A, K, T>, options?: RegisterOptions): Promise<Registration>;
    private unregister;
    protected onMessage(msg: WampMessage): boolean;
    protected onClose(): void;
}
export default Callee;
