223 lines
7.4 KiB
TypeScript
223 lines
7.4 KiB
TypeScript
/// <reference path="./gio-2.0.d.ts" />
|
|
/// <reference path="./gobject-2.0.d.ts" />
|
|
/// <reference path="./glib-2.0.d.ts" />
|
|
/// <reference path="./gmodule-2.0.d.ts" />
|
|
|
|
/**
|
|
* 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://AstalCava?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 AstalCava {
|
|
/**
|
|
* AstalCava-0.1
|
|
*/
|
|
|
|
export namespace Input {
|
|
export const $gtype: GObject.GType<Input>;
|
|
}
|
|
|
|
enum Input {
|
|
FIFO,
|
|
PORTAUDIO,
|
|
PIPEWIRE,
|
|
ALSA,
|
|
PULSE,
|
|
SNDIO,
|
|
SHMEM,
|
|
WINSCAP,
|
|
}
|
|
/**
|
|
* gets the default Cava object.
|
|
*/
|
|
function get_default(): Cava | null;
|
|
namespace Cava {
|
|
// Constructor properties interface
|
|
|
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
|
active: boolean;
|
|
autosens: boolean;
|
|
bars: number;
|
|
channels: number;
|
|
framerate: number;
|
|
high_cutoff: number;
|
|
highCutoff: number;
|
|
input: Input;
|
|
low_cutoff: number;
|
|
lowCutoff: number;
|
|
noise_reduction: number;
|
|
noiseReduction: number;
|
|
samplerate: number;
|
|
source: string;
|
|
stereo: boolean;
|
|
values: number[];
|
|
}
|
|
}
|
|
|
|
class Cava extends GObject.Object {
|
|
static $gtype: GObject.GType<Cava>;
|
|
|
|
// Properties
|
|
|
|
/**
|
|
* whether or not the audio capture and visualization is running. if false the values array will
|
|
* not be updated.
|
|
*/
|
|
get active(): boolean;
|
|
set active(val: boolean);
|
|
/**
|
|
* When set, the sensitivity will automatically be adjusted.
|
|
*/
|
|
get autosens(): boolean;
|
|
set autosens(val: boolean);
|
|
/**
|
|
* the number of bars the visualizer should create.
|
|
*/
|
|
get bars(): number;
|
|
set bars(val: number);
|
|
/**
|
|
* how many input channels to consider
|
|
*/
|
|
get channels(): number;
|
|
set channels(val: number);
|
|
/**
|
|
* how often the values should be updated
|
|
*/
|
|
get framerate(): number;
|
|
set framerate(val: number);
|
|
/**
|
|
* cut off frequencies above this value
|
|
*/
|
|
get high_cutoff(): number;
|
|
set high_cutoff(val: number);
|
|
/**
|
|
* cut off frequencies above this value
|
|
*/
|
|
get highCutoff(): number;
|
|
set highCutoff(val: number);
|
|
/**
|
|
* specifies which audio server should be used.
|
|
*/
|
|
get input(): Input;
|
|
set input(val: Input);
|
|
/**
|
|
* cut off frequencies below this value
|
|
*/
|
|
get low_cutoff(): number;
|
|
set low_cutoff(val: number);
|
|
/**
|
|
* cut off frequencies below this value
|
|
*/
|
|
get lowCutoff(): number;
|
|
set lowCutoff(val: number);
|
|
/**
|
|
* adjusts the noise-reduction filter. low values are fast and noisy, large values are slow and
|
|
* smooth.
|
|
*/
|
|
get noise_reduction(): number;
|
|
set noise_reduction(val: number);
|
|
/**
|
|
* adjusts the noise-reduction filter. low values are fast and noisy, large values are slow and
|
|
* smooth.
|
|
*/
|
|
get noiseReduction(): number;
|
|
set noiseReduction(val: number);
|
|
/**
|
|
* the samplerate of the input
|
|
*/
|
|
get samplerate(): number;
|
|
set samplerate(val: number);
|
|
/**
|
|
* specifies which audio source should be used. Refer to the cava docs on how to use this
|
|
* property.
|
|
*/
|
|
get source(): string;
|
|
set source(val: string);
|
|
get stereo(): boolean;
|
|
set stereo(val: boolean);
|
|
/**
|
|
* A list of values, each represent the height of one bar. The values are generally between 0
|
|
* and 1 but can overshoot occasionally, in which case the sensitivity will be decreased
|
|
* automatically if [property`AstalCava`.Cava:autosens] is set. The array will have
|
|
* [property`AstalCava`.Cava:bars] entries. If [property`AstalCava`.Cava:stereo] is set, the first
|
|
* half of the array will represent the left channel and the second half the right channel, so
|
|
* there will be only bars/2 bars per channel. If the number of bars is odd, the last value will
|
|
* be 0.
|
|
*/
|
|
get values(): number[];
|
|
|
|
// Constructors
|
|
|
|
constructor(properties?: Partial<Cava.ConstructorProps>, ...args: any[]);
|
|
|
|
_init(...args: any[]): void;
|
|
|
|
// Static methods
|
|
|
|
/**
|
|
* gets the default Cava object.
|
|
*/
|
|
static get_default(): Cava | null;
|
|
|
|
// Methods
|
|
|
|
get_active(): boolean;
|
|
get_autosens(): boolean;
|
|
get_bars(): number;
|
|
get_channels(): number;
|
|
get_framerate(): number;
|
|
get_high_cutoff(): number;
|
|
get_input(): Input;
|
|
get_low_cutoff(): number;
|
|
get_noise_reduction(): number;
|
|
get_samplerate(): number;
|
|
get_source(): string;
|
|
get_stereo(): boolean;
|
|
get_values(): number[];
|
|
set_active(active: boolean): void;
|
|
set_autosens(autosens: boolean): void;
|
|
set_bars(bars: number): void;
|
|
set_channels(channels: number): void;
|
|
set_framerate(framerate: number): void;
|
|
set_high_cutoff(high_cutoff: number): void;
|
|
set_input(input: Input | null): void;
|
|
set_low_cutoff(low_cutoff: number): void;
|
|
set_noise_reduction(noise: number): void;
|
|
set_samplerate(samplerate: number): void;
|
|
set_source(source: string): void;
|
|
set_stereo(stereo: boolean): void;
|
|
}
|
|
|
|
type CavaClass = typeof Cava;
|
|
/**
|
|
* Name of the imported GIR library
|
|
* `see` https://gitlab.gnome.org/GNOME/gjs/-/blob/master/gi/ns.cpp#L188
|
|
*/
|
|
const __name__: string;
|
|
/**
|
|
* Version of the imported GIR library
|
|
* `see` https://gitlab.gnome.org/GNOME/gjs/-/blob/master/gi/ns.cpp#L189
|
|
*/
|
|
const __version__: string;
|
|
}
|
|
|
|
export default AstalCava;
|
|
}
|
|
|
|
declare module 'gi://AstalCava' {
|
|
import AstalCava01 from 'gi://AstalCava?version=0.1';
|
|
export default AstalCava01;
|
|
}
|
|
// END
|