import { MixerConnection } from '../mixer-connection';
import { MixerStore } from '../state/mixer-store';
import { AuxChannel } from './aux-channel';
import { MtxBus } from './mtx-bus';
/**
 * Represents an AUX bus
 */
export declare class AuxBus {
    private conn;
    private store;
    private bus;
    /**
     * Whether this AUX bus is currently configured as a matrix bus (Ui24R only).
     * When `true`, this slot is a matrix and should be controlled through `conn.mtx(n)` instead.
     */
    readonly isMatrix$: import('rxjs').Observable<boolean>;
    constructor(conn: MixerConnection, store: MixerStore, bus: number);
    /**
     * Get input channel on the AUX bus
     * @param channel Channel number
     */
    input(channel: number): AuxChannel;
    /**
     * Get line channel on the AUX bus
     * @param channel Channel number
     */
    line(channel: number): AuxChannel;
    /**
     * Get player channel on the AUX bus
     * @param channel Channel number
     */
    player(channel: number): AuxChannel;
    /**
     * Get FX channel on the AUX bus
     * @param channel Channel number
     */
    fx(channel: number): AuxChannel;
    /**
     * Switch this AUX bus to a matrix bus (Ui24R only).
     * When this bus is stereo-linked, the linked neighbour is switched as well.
     * @returns the matrix bus (`MtxBus`) for the same slot
     */
    switchToMatrix(): MtxBus;
}
