///
///
///
///
/**
* Type Definitions for Gjs (https://gjs.guide/)
*
* These type definitions are automatically generated, do not edit them by hand.
* If you found a bug fix it in `ts-for-gir` or create a bug report on https://github.com/gjsify/ts-for-gir
*
* The based EJS template file is used for the generated .d.ts file of each GIR module like Gtk-4.0, GObject-2.0, ...
*/
declare module 'gi://AstalWp?version=0.1' {
// Module dependencies
import type Gio from 'gi://Gio?version=2.0';
import type GObject from 'gi://GObject?version=2.0';
import type GLib from 'gi://GLib?version=2.0';
import type GModule from 'gi://GModule?version=2.0';
export namespace AstalWp {
/**
* AstalWp-0.1
*/
export namespace Available {
export const $gtype: GObject.GType;
}
enum Available {
UNKNOWN,
NO,
YES,
}
export namespace DeviceType {
export const $gtype: GObject.GType;
}
enum DeviceType {
UNKNOWN,
AUDIO_DEVICE,
VIDEO_DEVICE,
}
export namespace Direction {
export const $gtype: GObject.GType;
}
enum Direction {
INPUT,
OUTPUT,
}
export namespace MediaCategory {
export const $gtype: GObject.GType;
}
enum MediaCategory {
UNKNOWN,
PLAYBACK,
CAPTURE,
DUPLEX,
MONITOR,
MANAGER,
}
export namespace MediaClass {
export const $gtype: GObject.GType;
}
enum MediaClass {
UNKNOWN,
AUDIO_SOURCE,
AUDIO_SINK,
STREAM_INPUT_AUDIO,
STREAM_OUTPUT_AUDIO,
VIDEO_SOURCE,
VIDEO_SINK,
STREAM_INPUT_VIDEO,
STREAM_OUTPUT_VIDEO,
}
export namespace MediaRole {
export const $gtype: GObject.GType;
}
enum MediaRole {
UNKNOWN,
MOVIE,
MUSIC,
CAMERA,
SCREEN,
COMMUNICATION,
GAME,
NOTIFICATION,
DSP,
PRODUCTION,
ACCESSIBILITY,
TEST,
}
export namespace NodeState {
export const $gtype: GObject.GType;
}
enum NodeState {
ERROR,
CREATING,
SUSPENDED,
IDLE,
RUNNING,
}
export namespace Scale {
export const $gtype: GObject.GType;
}
enum Scale {
LINEAR,
CUBIC,
}
const MAJOR_VERSION: number;
const MICRO_VERSION: number;
const MINOR_VERSION: number;
const VERSION: string;
function device_type_from_string(string: string): DeviceType;
function device_type_to_string(device_type: DeviceType | null): string;
/**
* gets the default wireplumber object.
* @returns gets the default wireplumber object.
*/
function get_default(): Wp | null;
function media_category_from_string(string: string): MediaCategory;
function media_category_to_string(category: MediaCategory | null): string;
function media_class_from_string(string: string): MediaClass;
function media_class_to_string(media_class: MediaClass | null): string;
function media_role_from_string(string: string): MediaRole;
function media_role_to_string(role: MediaRole | null): string;
namespace Audio {
// Signal signatures
interface SignalSignatures extends GObject.Object.SignalSignatures {
'device-added': (arg0: Device) => void;
'device-removed': (arg0: Device) => void;
'microphone-added': (arg0: Endpoint) => void;
'microphone-removed': (arg0: Endpoint) => void;
'recorder-added': (arg0: Stream) => void;
'recorder-removed': (arg0: Stream) => void;
'speaker-added': (arg0: Endpoint) => void;
'speaker-removed': (arg0: Endpoint) => void;
'stream-added': (arg0: Stream) => void;
'stream-removed': (arg0: Stream) => void;
'notify::default-microphone': (pspec: GObject.ParamSpec) => void;
'notify::default-speaker': (pspec: GObject.ParamSpec) => void;
'notify::devices': (pspec: GObject.ParamSpec) => void;
'notify::microphones': (pspec: GObject.ParamSpec) => void;
'notify::recorders': (pspec: GObject.ParamSpec) => void;
'notify::speakers': (pspec: GObject.ParamSpec) => void;
'notify::streams': (pspec: GObject.ParamSpec) => void;
}
// Constructor properties interface
interface ConstructorProps extends GObject.Object.ConstructorProps {
default_microphone: Endpoint;
defaultMicrophone: Endpoint;
default_speaker: Endpoint;
defaultSpeaker: Endpoint;
devices: Device[];
microphones: Endpoint[];
recorders: Stream[];
speakers: Endpoint[];
streams: Stream[];
}
}
/**
* is instanciated by [class`AstalWp`.Wp]. An instance of class can only be received there.
*
* This is a convinience class and acts as a filter for [class`AstalWp`.Wp] to filter for audio
* endpoints and devices.
*/
class Audio extends GObject.Object {
static $gtype: GObject.GType