win-audio
Version:
Get, Set and Watch Speaker/Microphone Volume on Windows
33 lines (32 loc) • 1.06 kB
TypeScript
import EventEmitter from "events";
type Event<T extends EventType> = T extends "change" ? {
old: number;
new: number;
} : {
old: boolean;
new: boolean;
};
type EventType = "change" | "toggle";
declare const initDevice: (device: number) => {
on: <T extends EventType>(event: T, cb: (v: Event<T>) => void) => EventEmitter<[never]>;
off: <T extends EventType>(event: T, cb: (v: Event<T>) => void) => EventEmitter<[never]>;
once: <T extends EventType>(event: T, cb: (v: Event<T>) => void) => EventEmitter<[never]>;
removeAllListeners: () => EventEmitter<[never]>;
start: (every: number) => void;
stop: () => void;
get: () => number;
set: (value: number) => void;
increase: (value: number) => void;
decrease: (value: number) => void;
mute: () => void;
unmute: () => void;
isMuted: () => boolean;
toggle: () => void;
};
type Instance = ReturnType<typeof initDevice>;
type ProxyInstances = {
speaker: Instance;
mic: Instance;
};
declare const proxy: ProxyInstances;
export default proxy;