import { MixerConnection } from '../mixer-connection';
import { MixerStore } from '../state/mixer-store';
import { MtkState } from '../types';
/**
 * Represents the multi track recorder (Ui24R only)
 */
export declare class MultiTrackRecorder {
    private conn;
    private store;
    /** Current state (playing, stopped, paused) */
    readonly state$: import('rxjs').Observable<MtkState>;
    /** Current session name (e.g. `0001` or individual name) */
    readonly session$: import('rxjs').Observable<string>;
    /** Current session length in seconds */
    readonly length$: import('rxjs').Observable<number>;
    /** Elapsed time of current session in seconds */
    readonly elapsedTime$: import('rxjs').Observable<number>;
    /** Remaining time of current session in seconds */
    readonly remainingTime$: import('rxjs').Observable<number>;
    /** Recording state */
    readonly recording$: import('rxjs').Observable<boolean>;
    /** Recording busy state */
    readonly busy$: import('rxjs').Observable<boolean>;
    /** Recording time in seconds */
    readonly recordingTime$: import('rxjs').Observable<number>;
    /** Soundcheck activation state */
    readonly soundcheck$: import('rxjs').Observable<boolean>;
    constructor(conn: MixerConnection, store: MixerStore);
    /** Start the player */
    play(): void;
    /** Pause the player */
    pause(): void;
    /** Stop the player */
    stop(): void;
    /** Toggle recording */
    recordToggle(): void;
    /** Start recording */
    recordStart(): void;
    /** Stop recording */
    recordStop(): void;
    /**
     * Set soundcheck (activate or deactivate)
     * @param value soundcheck activation state
     */
    setSoundcheck(value: boolean): void;
    /** Activate soundcheck */
    activateSoundcheck(): void;
    /** Deactivate soundcheck */
    deactivateSoundcheck(): void;
    /** Toggle soundcheck */
    toggleSoundcheck(): void;
}
