openmixer — generated API reference
    Preparing search index...

    Interface ConsoleStateProvider

    Reads + writes the live console state for the persistence stores.

    interface ConsoleStateProvider {
        applyChannel(
            channel: { index: number; kind: string },
            captured: CapturedChannel,
        ): Promise<void>;
        applyConsole(snapshot: ConsoleSnapshot): Promise<void>;
        captureChannel(
            channel: { index: number; kind: string },
        ): CapturedChannel | Promise<CapturedChannel>;
        captureConsole(): ConsoleSnapshot | Promise<ConsoleSnapshot>;
        peerOwnerOfFact(
            channel: { index: number; kind: string },
            fact:
                | "trim"
                | "link"
                | "record"
                | "width"
                | "fader"
                | "gain"
                | "pan"
                | "divergence"
                | "polarity"
                | "align"
                | "name"
                | "colour"
                | "instrument"
                | "source"
                | "inserts"
                | "mute"
                | "solo"
                | "soloSafe"
                | "headAmp"
                | "eq"
                | "gate"
                | "gateKey"
                | "dynamics"
                | "delay"
                | "reverb"
                | "drive"
                | "order"
                | "chain"
                | "sends"
                | "meter"
                | "rta"
                | "hrp"
                | "fbs"
                | "recallSafe"
                | "clip"
                | "members"
                | "parents"
                | "toMain"
                | "sources"
                | "sourceStereo"
                | "sourceRef",
        ): string
        | undefined;
    }

    Implemented by

    Index
    • Apply a captured chain + processing onto a channel atomically and broadcast it.

      Parameters

      Returns Promise<void>

    • Apply a snapshot atomically, replacing current state. The provider is responsible for ordering (faders/mutes/pans then chains, etc.) and for broadcasting the result; the caller only awaits completion.

      Parameters

      Returns Promise<void>

    • The PEER that owns fact on this channel right now, or nothing where the desk's own stage owns it — the contract's owner column (ownerOf) evaluated against the live console.

      The seam exists because a whole-state door must resolve ownership the SAME way the fact's own row does: /channel/{kind}/{index}/gain refuses OWNED_BY_PEER on a sens-capable input because the head-amp entity owns that channel's gain, and a config or a session that wrote straight through the engine moved a real preamp the row refuses to move. One resolution, consulted by the apply and by the warning the operator reads before it.

      Parameters

      • channel: { index: number; kind: string }
      • fact:
            | "trim"
            | "link"
            | "record"
            | "width"
            | "fader"
            | "gain"
            | "pan"
            | "divergence"
            | "polarity"
            | "align"
            | "name"
            | "colour"
            | "instrument"
            | "source"
            | "inserts"
            | "mute"
            | "solo"
            | "soloSafe"
            | "headAmp"
            | "eq"
            | "gate"
            | "gateKey"
            | "dynamics"
            | "delay"
            | "reverb"
            | "drive"
            | "order"
            | "chain"
            | "sends"
            | "meter"
            | "rta"
            | "hrp"
            | "fbs"
            | "recallSafe"
            | "clip"
            | "members"
            | "parents"
            | "toMain"
            | "sources"
            | "sourceStereo"
            | "sourceRef"

      Returns string | undefined