export declare abstract class BaseTransaction {
    transaction?: string;
    body: any;
}
export declare class CreateSession extends BaseTransaction {
    janus: string;
    constructor();
}
export declare class DestroySession extends BaseTransaction {
    janus: string;
    session_id: number;
    constructor({ session_id }: {
        [id: string]: any;
    });
}
export declare class AttachPluginMessage extends BaseTransaction {
    janus: string;
    plugin: string;
    session_id: number;
    opaque_id: string;
    constructor({ session_id, opaque }: {
        [id: string]: any;
    });
}
export declare class TrickleMessage extends BaseTransaction {
    janus: string;
    session_id: number;
    handle_id: number;
    candidate: RTCIceCandidate;
    constructor({ session_id, handle_id, candidate }: {
        [id: string]: any;
    });
}
export declare class StartRoomMessage extends BaseTransaction {
    janus: string;
    session_id: number;
    handle_id: number;
    body: any;
    jsep: any;
    constructor(data: {
        [id: string]: any;
    });
}
export declare class DetachPluginMessage extends BaseTransaction {
    janus: string;
    session_id: number;
    handle_id: number;
    constructor({ session_id, handle_id }: {
        [id: string]: any;
    });
}
export declare class JoinRoomAsPublisher extends BaseTransaction {
    janus: string;
    body: any;
    session_id: number;
    handle_id: number;
    constructor({ session_id, handle_id, room, display, audio, video }: any);
}
export declare class JoinRoomAsSubscriber extends BaseTransaction {
    janus: string;
    body: any;
    session_id: number;
    handle_id: number;
    constructor({ session_id, handle_id, room, streams, private_id }: any);
}
export declare class UpdateSubscriber extends BaseTransaction {
    janus: string;
    body: any;
    session_id: number;
    handle_id: number;
    constructor({ session_id, handle_id, body }: any);
}
export declare class HeartBeat extends BaseTransaction {
    janus: string;
    session_id: number;
    constructor({ session_id }: {
        [id: string]: any;
    });
}
export declare class SendOffer extends BaseTransaction {
    janus: string;
    session_id: number;
    handle_id: number;
    body: any;
    jsep: any;
    constructor({ session_id, handle_id, body, jsep }: any);
}
export declare class MuteAudio extends BaseTransaction {
    janus: string;
    session_id: number;
    handle_id: number;
    body: {
        [id: string]: any;
    };
    constructor({ session_id, handle_id, mute, room, id }: any);
}
export declare class MuteVideo extends BaseTransaction {
    janus: string;
    session_id: number;
    handle_id: number;
    body: {
        [id: string]: any;
    };
    constructor({ session_id, handle_id, mute, room, id }: any);
}
