@steambrew/client
Version:
A support library for creating plugins with Millennium.
100 lines (99 loc) • 3.09 kB
TypeScript
import { JsPbMessage, Unregisterable } from '../shared';
export interface AudioDevice {
/**
* If `data` is deserialized, returns {@link CMsgSystemAudioManagerState}.
* @returns an object that can be used to unregister the callback.
*/
RegisterForStateChanges(callback: (data: ArrayBuffer) => void): Unregisterable;
/**
* @param base64 Serialized base64 message from `CMsgSystemAudioManagerUpdateSomething`.
*/
UpdateSomething(base64: string): void;
}
export interface CMsgSystemAudioManagerState extends JsPbMessage {
counter(): number | undefined;
hw(): MsgSystemAudioManagerStateHW | undefined;
rtime_filter(): number | undefined;
}
export interface MsgSystemAudioManagerStateHW {
devices: MsgSystemAudioManagerDevice[];
nodes: MsgSystemAudioManagerNode[];
ports: MsgSystemAudioManagerPort[];
links: MsgSystemAudioManagerLink[];
}
export interface MsgSystemAudioManagerDevice {
base: MsgSystemAudioManagerObject | undefined;
name: string | undefined;
nick: string | undefined;
description: string | undefined;
api: string | undefined;
}
export interface MsgSystemAudioManagerNode {
base: MsgSystemAudioManagerObject | undefined;
device_id: number | undefined;
name: string | undefined;
nick: string | undefined;
description: string | undefined;
edirection: ESystemAudioDirection | undefined;
volume: MsgSystemAudioVolume | undefined;
}
export interface MsgSystemAudioManagerPort {
base: MsgSystemAudioManagerObject | undefined;
node_id: number | undefined;
name: string | undefined;
alias: string | undefined;
etype: ESystemAudioPortType | undefined;
edirection: ESystemAudioPortDirection | undefined;
is_physical: boolean | undefined;
is_terminal: boolean | undefined;
is_control: boolean | undefined;
is_monitor: boolean | undefined;
}
export interface MsgSystemAudioVolume {
entries: MsgSystemAudioVolumeChannelEntry[] | undefined;
is_muted: boolean | undefined;
}
export interface MsgSystemAudioVolumeChannelEntry {
echannel: ESystemAudioChannel | undefined;
volume: number | undefined;
}
export interface MsgSystemAudioManagerLink {
base: MsgSystemAudioManagerObject | undefined;
output_node_id: number | undefined;
output_port_id: number | undefined;
input_node_id: number | undefined;
input_port_id: number | undefined;
}
export interface MsgSystemAudioManagerObject {
id: number | undefined;
rtime_last_update: number | undefined;
}
export declare enum ESystemAudioDirection {
Invalid = 0,
Input = 1,
Output = 2
}
export declare enum ESystemAudioPortDirection {
Invalid = 0,
Input = 1,
Output = 2
}
export declare enum ESystemAudioPortType {
Invalid = 0,
Unknown = 1,
Audio32f = 2,
Midi8b = 3,
Video32RGBA = 4
}
export declare enum ESystemAudioChannel {
Invalid = 0,
Aggregated = 1,
FrontLeft = 2,
FrontRight = 3,
LFE = 4,
BackLeft = 5,
BackRight = 6,
FrontCenter = 7,
Unknown = 8,
Mono = 9
}