Reconfigured AGS; types, tsc version, and flake are fixed up and working
This commit is contained in:
parent
c9fa10ccbd
commit
35de755a6c
93 changed files with 883862 additions and 225 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -1,2 +1 @@
|
||||||
node_modules/
|
node_modules/
|
||||||
@girs/
|
|
||||||
|
|
1
.tool-versions
Normal file
1
.tool-versions
Normal file
|
@ -0,0 +1 @@
|
||||||
|
nodejs system
|
28
.vscode/settings.json
vendored
28
.vscode/settings.json
vendored
|
@ -1,12 +1,28 @@
|
||||||
{
|
{
|
||||||
"typescript.tsdk": "node_modules/typescript/lib",
|
"biome.enabled": true,
|
||||||
|
"editor.formatOnSave": true,
|
||||||
"explorer.fileNesting.patterns": {
|
"explorer.fileNesting.patterns": {
|
||||||
"flake.nix": "*.nix, flake.lock, .envrc",
|
"flake.nix": "*.nix, flake.lock, .envrc, .tool-versions",
|
||||||
"package.json": " pnpm-lock.yaml, tsconfig.json, .gitignore"
|
"package.json": " pnpm-lock.yaml, tsconfig.json, .gitignore"
|
||||||
},
|
},
|
||||||
"files.exclude": {
|
"files.exclude": {
|
||||||
".direnv": true,
|
".direnv": true
|
||||||
"node_modules": true,
|
// "@girs": true,
|
||||||
"@girs": true
|
// "node_modules": true
|
||||||
}
|
},
|
||||||
|
"terminal.integrated.defaultProfile.linux": "fish-fhs",
|
||||||
|
"terminal.integrated.profiles.linux": {
|
||||||
|
"fish-fhs": {
|
||||||
|
"args": [
|
||||||
|
"--user",
|
||||||
|
"--pty",
|
||||||
|
"--quiet",
|
||||||
|
"--same-dir",
|
||||||
|
"--service-type=exec",
|
||||||
|
"fish"
|
||||||
|
],
|
||||||
|
"path": "systemd-run"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"typescript.tsdk": "./node_modules/typescript/lib"
|
||||||
}
|
}
|
83
@girs/appmenuglibtranslator-24.02.d.ts
vendored
Normal file
83
@girs/appmenuglibtranslator-24.02.d.ts
vendored
Normal file
|
@ -0,0 +1,83 @@
|
||||||
|
/// <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://AppmenuGLibTranslator?version=24.02' {
|
||||||
|
// 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 AppmenuGLibTranslator {
|
||||||
|
/**
|
||||||
|
* AppmenuGLibTranslator-24.02
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Importer {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
action_group: Gio.ActionGroup;
|
||||||
|
actionGroup: Gio.ActionGroup;
|
||||||
|
bus_name: string;
|
||||||
|
busName: string;
|
||||||
|
model: Gio.MenuModel;
|
||||||
|
object_path: string;
|
||||||
|
objectPath: string;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Importer extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Importer>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
get action_group(): Gio.ActionGroup;
|
||||||
|
get actionGroup(): Gio.ActionGroup;
|
||||||
|
set bus_name(val: string);
|
||||||
|
set busName(val: string);
|
||||||
|
get model(): Gio.MenuModel;
|
||||||
|
set object_path(val: string);
|
||||||
|
set objectPath(val: string);
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Importer.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](bus_name: string, object_path: string): Importer;
|
||||||
|
}
|
||||||
|
|
||||||
|
type ImporterClass = typeof Importer;
|
||||||
|
/**
|
||||||
|
* 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 AppmenuGLibTranslator;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://AppmenuGLibTranslator' {
|
||||||
|
import AppmenuGLibTranslator2402 from 'gi://AppmenuGLibTranslator?version=24.02';
|
||||||
|
export default AppmenuGLibTranslator2402;
|
||||||
|
}
|
||||||
|
// END
|
2248
@girs/astal-3.0.d.ts
vendored
Normal file
2248
@girs/astal-3.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
1564
@girs/astal-4.0.d.ts
vendored
Normal file
1564
@girs/astal-4.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
384
@girs/astalapps-0.1.d.ts
vendored
Normal file
384
@girs/astalapps-0.1.d.ts
vendored
Normal file
|
@ -0,0 +1,384 @@
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./gobject-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://AstalApps?version=0.1' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
export namespace AstalApps {
|
||||||
|
/**
|
||||||
|
* AstalApps-0.1
|
||||||
|
*/
|
||||||
|
|
||||||
|
const MAJOR_VERSION: number;
|
||||||
|
const MINOR_VERSION: number;
|
||||||
|
const MICRO_VERSION: number;
|
||||||
|
const VERSION: string;
|
||||||
|
namespace Application {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
app: never;
|
||||||
|
frequency: number;
|
||||||
|
name: string;
|
||||||
|
entry: string;
|
||||||
|
description: string;
|
||||||
|
wm_class: string;
|
||||||
|
wmClass: string;
|
||||||
|
executable: string;
|
||||||
|
icon_name: string;
|
||||||
|
iconName: string;
|
||||||
|
keywords: string[];
|
||||||
|
categories: string[];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Object representing an applications .desktop file.
|
||||||
|
*/
|
||||||
|
class Application extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Application>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The underlying DesktopAppInfo.
|
||||||
|
*/
|
||||||
|
get app(): never;
|
||||||
|
set app(val: never);
|
||||||
|
/**
|
||||||
|
* The number of times [method`AstalApps`.Application.launch] was called on this Application.
|
||||||
|
*/
|
||||||
|
get frequency(): number;
|
||||||
|
set frequency(val: number);
|
||||||
|
/**
|
||||||
|
* The name of this Application.
|
||||||
|
*/
|
||||||
|
get name(): string;
|
||||||
|
/**
|
||||||
|
* Name of the .desktop of this Application.
|
||||||
|
*/
|
||||||
|
get entry(): string;
|
||||||
|
/**
|
||||||
|
* Description of this Application.
|
||||||
|
*/
|
||||||
|
get description(): string;
|
||||||
|
/**
|
||||||
|
* `StartupWMClass` field from the desktop file. This represents the `WM_CLASS` property of the main window of the application.
|
||||||
|
*/
|
||||||
|
get wm_class(): string;
|
||||||
|
/**
|
||||||
|
* `StartupWMClass` field from the desktop file. This represents the `WM_CLASS` property of the main window of the application.
|
||||||
|
*/
|
||||||
|
get wmClass(): string;
|
||||||
|
/**
|
||||||
|
* `Exec` field from the desktop file. Note that if you want to launch this Application you should use the [method@
|
||||||
|
* AstalApps.Application.launch] method.
|
||||||
|
*/
|
||||||
|
get executable(): string;
|
||||||
|
/**
|
||||||
|
* `Icon` field from the desktop file. This is usually a named icon or a path to a file.
|
||||||
|
*/
|
||||||
|
get icon_name(): string;
|
||||||
|
/**
|
||||||
|
* `Icon` field from the desktop file. This is usually a named icon or a path to a file.
|
||||||
|
*/
|
||||||
|
get iconName(): string;
|
||||||
|
/**
|
||||||
|
* `Keywords` field from the desktop file.
|
||||||
|
*/
|
||||||
|
get keywords(): string[];
|
||||||
|
/**
|
||||||
|
* `Categories` field from the desktop file.
|
||||||
|
*/
|
||||||
|
get categories(): string[];
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Application.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a value from the .desktop file by its key.
|
||||||
|
* @param key
|
||||||
|
*/
|
||||||
|
get_key(key: string): string;
|
||||||
|
/**
|
||||||
|
* Launches this application. The launched application inherits the environment of the launching process
|
||||||
|
*/
|
||||||
|
launch(): boolean;
|
||||||
|
/**
|
||||||
|
* Calculate a score for an application using fuzzy matching algorithm.
|
||||||
|
* @param term
|
||||||
|
*/
|
||||||
|
fuzzy_match(term: string): Score;
|
||||||
|
/**
|
||||||
|
* Calculate a score using exact string algorithm.
|
||||||
|
* @param term
|
||||||
|
*/
|
||||||
|
exact_match(term: string): Score;
|
||||||
|
get_app(): never;
|
||||||
|
set_app(value: never): void;
|
||||||
|
get_frequency(): number;
|
||||||
|
set_frequency(value: number): void;
|
||||||
|
get_name(): string;
|
||||||
|
get_entry(): string;
|
||||||
|
get_description(): string;
|
||||||
|
get_wm_class(): string;
|
||||||
|
get_executable(): string;
|
||||||
|
get_icon_name(): string;
|
||||||
|
get_keywords(): string[];
|
||||||
|
get_categories(): string[];
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Apps {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
show_hidden: boolean;
|
||||||
|
showHidden: boolean;
|
||||||
|
list: Application[];
|
||||||
|
min_score: number;
|
||||||
|
minScore: number;
|
||||||
|
name_multiplier: number;
|
||||||
|
nameMultiplier: number;
|
||||||
|
entry_multiplier: number;
|
||||||
|
entryMultiplier: number;
|
||||||
|
executable_multiplier: number;
|
||||||
|
executableMultiplier: number;
|
||||||
|
description_multiplier: number;
|
||||||
|
descriptionMultiplier: number;
|
||||||
|
keywords_multiplier: number;
|
||||||
|
keywordsMultiplier: number;
|
||||||
|
categories_multiplier: number;
|
||||||
|
categoriesMultiplier: number;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This object can be used to query applications. Multipliers can be set to customize [struct`AstalApps`.Score] results from queries which
|
||||||
|
* then are summed and sorted accordingly.
|
||||||
|
*/
|
||||||
|
class Apps extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Apps>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Indicates wether hidden applications should included in queries.
|
||||||
|
*/
|
||||||
|
get show_hidden(): boolean;
|
||||||
|
set show_hidden(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates wether hidden applications should included in queries.
|
||||||
|
*/
|
||||||
|
get showHidden(): boolean;
|
||||||
|
set showHidden(val: boolean);
|
||||||
|
/**
|
||||||
|
* Full list of available applications.
|
||||||
|
*/
|
||||||
|
get list(): Application[];
|
||||||
|
/**
|
||||||
|
* The minimum score the application has to meet in order to be included in queries.
|
||||||
|
*/
|
||||||
|
get min_score(): number;
|
||||||
|
set min_score(val: number);
|
||||||
|
/**
|
||||||
|
* The minimum score the application has to meet in order to be included in queries.
|
||||||
|
*/
|
||||||
|
get minScore(): number;
|
||||||
|
set minScore(val: number);
|
||||||
|
/**
|
||||||
|
* Extra multiplier to apply when matching the `name` of an application. Defaults to `2`
|
||||||
|
*/
|
||||||
|
get name_multiplier(): number;
|
||||||
|
set name_multiplier(val: number);
|
||||||
|
/**
|
||||||
|
* Extra multiplier to apply when matching the `name` of an application. Defaults to `2`
|
||||||
|
*/
|
||||||
|
get nameMultiplier(): number;
|
||||||
|
set nameMultiplier(val: number);
|
||||||
|
/**
|
||||||
|
* Extra multiplier to apply when matching the entry of an application. Defaults to `0`
|
||||||
|
*/
|
||||||
|
get entry_multiplier(): number;
|
||||||
|
set entry_multiplier(val: number);
|
||||||
|
/**
|
||||||
|
* Extra multiplier to apply when matching the entry of an application. Defaults to `0`
|
||||||
|
*/
|
||||||
|
get entryMultiplier(): number;
|
||||||
|
set entryMultiplier(val: number);
|
||||||
|
/**
|
||||||
|
* Extra multiplier to apply when matching the executable of an application. Defaults to `0.5`
|
||||||
|
*/
|
||||||
|
get executable_multiplier(): number;
|
||||||
|
set executable_multiplier(val: number);
|
||||||
|
/**
|
||||||
|
* Extra multiplier to apply when matching the executable of an application. Defaults to `0.5`
|
||||||
|
*/
|
||||||
|
get executableMultiplier(): number;
|
||||||
|
set executableMultiplier(val: number);
|
||||||
|
/**
|
||||||
|
* Extra multiplier to apply when matching the description of an application. Defaults to `0`
|
||||||
|
*/
|
||||||
|
get description_multiplier(): number;
|
||||||
|
set description_multiplier(val: number);
|
||||||
|
/**
|
||||||
|
* Extra multiplier to apply when matching the description of an application. Defaults to `0`
|
||||||
|
*/
|
||||||
|
get descriptionMultiplier(): number;
|
||||||
|
set descriptionMultiplier(val: number);
|
||||||
|
/**
|
||||||
|
* Extra multiplier to apply when matching the keywords of an application. Defaults to `0.5`
|
||||||
|
*/
|
||||||
|
get keywords_multiplier(): number;
|
||||||
|
set keywords_multiplier(val: number);
|
||||||
|
/**
|
||||||
|
* Extra multiplier to apply when matching the keywords of an application. Defaults to `0.5`
|
||||||
|
*/
|
||||||
|
get keywordsMultiplier(): number;
|
||||||
|
set keywordsMultiplier(val: number);
|
||||||
|
/**
|
||||||
|
* Extra multiplier to apply when matching the categories of an application. Defaults to `0`
|
||||||
|
*/
|
||||||
|
get categories_multiplier(): number;
|
||||||
|
set categories_multiplier(val: number);
|
||||||
|
/**
|
||||||
|
* Extra multiplier to apply when matching the categories of an application. Defaults to `0`
|
||||||
|
*/
|
||||||
|
get categoriesMultiplier(): number;
|
||||||
|
set categoriesMultiplier(val: number);
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Apps.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](): Apps;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Calculate a score for an application using fuzzy matching algorithm. Taking this Apps' include settings into consideration .
|
||||||
|
* @param search
|
||||||
|
* @param a
|
||||||
|
*/
|
||||||
|
fuzzy_score(search: string, a: Application): number;
|
||||||
|
/**
|
||||||
|
* Calculate a score for an application using exact string algorithm. Taking this Apps' include settings into consideration .
|
||||||
|
* @param search
|
||||||
|
* @param a
|
||||||
|
*/
|
||||||
|
exact_score(search: string, a: Application): number;
|
||||||
|
/**
|
||||||
|
* Query the `list` of applications with a fuzzy matching algorithm.
|
||||||
|
* @param search
|
||||||
|
*/
|
||||||
|
fuzzy_query(search?: string | null): Application[];
|
||||||
|
/**
|
||||||
|
* Query the `list` of applications with a simple string matching algorithm.
|
||||||
|
* @param search
|
||||||
|
*/
|
||||||
|
exact_query(search?: string | null): Application[];
|
||||||
|
/**
|
||||||
|
* Reload the `list` of Applications.
|
||||||
|
*/
|
||||||
|
reload(): void;
|
||||||
|
get_show_hidden(): boolean;
|
||||||
|
set_show_hidden(value: boolean): void;
|
||||||
|
get_list(): Application[];
|
||||||
|
get_min_score(): number;
|
||||||
|
set_min_score(value: number): void;
|
||||||
|
get_name_multiplier(): number;
|
||||||
|
set_name_multiplier(value: number): void;
|
||||||
|
get_entry_multiplier(): number;
|
||||||
|
set_entry_multiplier(value: number): void;
|
||||||
|
get_executable_multiplier(): number;
|
||||||
|
set_executable_multiplier(value: number): void;
|
||||||
|
get_description_multiplier(): number;
|
||||||
|
set_description_multiplier(value: number): void;
|
||||||
|
get_keywords_multiplier(): number;
|
||||||
|
set_keywords_multiplier(value: number): void;
|
||||||
|
get_categories_multiplier(): number;
|
||||||
|
set_categories_multiplier(value: number): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type ApplicationClass = typeof Application;
|
||||||
|
abstract class ApplicationPrivate {
|
||||||
|
static $gtype: GObject.GType<ApplicationPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type AppsClass = typeof Apps;
|
||||||
|
abstract class AppsPrivate {
|
||||||
|
static $gtype: GObject.GType<AppsPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Score {
|
||||||
|
static $gtype: GObject.GType<Score>;
|
||||||
|
|
||||||
|
// Fields
|
||||||
|
|
||||||
|
name: number;
|
||||||
|
entry: number;
|
||||||
|
executable: number;
|
||||||
|
description: number;
|
||||||
|
keywords: number;
|
||||||
|
categories: number;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
properties?: Partial<{
|
||||||
|
name: number;
|
||||||
|
entry: number;
|
||||||
|
executable: number;
|
||||||
|
description: number;
|
||||||
|
keywords: number;
|
||||||
|
categories: number;
|
||||||
|
}>,
|
||||||
|
);
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 AstalApps;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://AstalApps' {
|
||||||
|
import AstalApps01 from 'gi://AstalApps?version=0.1';
|
||||||
|
export default AstalApps01;
|
||||||
|
}
|
||||||
|
// END
|
696
@girs/astalbattery-0.1.d.ts
vendored
Normal file
696
@girs/astalbattery-0.1.d.ts
vendored
Normal file
|
@ -0,0 +1,696 @@
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./gobject-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://AstalBattery?version=0.1' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
export namespace AstalBattery {
|
||||||
|
/**
|
||||||
|
* AstalBattery-0.1
|
||||||
|
*/
|
||||||
|
|
||||||
|
export namespace State {
|
||||||
|
export const $gtype: GObject.GType<State>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum State {
|
||||||
|
UNKNOWN,
|
||||||
|
CHARGING,
|
||||||
|
DISCHARGING,
|
||||||
|
EMPTY,
|
||||||
|
FULLY_CHARGED,
|
||||||
|
PENDING_CHARGE,
|
||||||
|
PENDING_DISCHARGE,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace Technology {
|
||||||
|
export const $gtype: GObject.GType<Technology>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Technology {
|
||||||
|
UNKNOWN,
|
||||||
|
LITHIUM_ION,
|
||||||
|
LITHIUM_POLYMER,
|
||||||
|
LITHIUM_IRON_PHOSPHATE,
|
||||||
|
LEAD_ACID,
|
||||||
|
NICKEL_CADMIUM,
|
||||||
|
NICKEL_METAL_HYDRIDE,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace WarningLevel {
|
||||||
|
export const $gtype: GObject.GType<WarningLevel>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum WarningLevel {
|
||||||
|
UNKNOWN,
|
||||||
|
NONE,
|
||||||
|
DISCHARGING,
|
||||||
|
LOW,
|
||||||
|
CRITICIAL,
|
||||||
|
ACTION,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace BatteryLevel {
|
||||||
|
export const $gtype: GObject.GType<BatteryLevel>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum BatteryLevel {
|
||||||
|
UNKNOWN,
|
||||||
|
NONE,
|
||||||
|
LOW,
|
||||||
|
CRITICIAL,
|
||||||
|
NORMAL,
|
||||||
|
HIGH,
|
||||||
|
FULL,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace Type {
|
||||||
|
export const $gtype: GObject.GType<Type>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Type {
|
||||||
|
UNKNOWN,
|
||||||
|
LINE_POWER,
|
||||||
|
BATTERY,
|
||||||
|
UPS,
|
||||||
|
MONITOR,
|
||||||
|
MOUSE,
|
||||||
|
KEYBOARD,
|
||||||
|
PDA,
|
||||||
|
PHONE,
|
||||||
|
MEDIA_PLAYER,
|
||||||
|
TABLET,
|
||||||
|
COMPUTER,
|
||||||
|
GAMING_INPUT,
|
||||||
|
PEN,
|
||||||
|
TOUCHPAD,
|
||||||
|
MODEM,
|
||||||
|
NETWORK,
|
||||||
|
HEADSET,
|
||||||
|
SPEAKERS,
|
||||||
|
HEADPHONES,
|
||||||
|
VIDEO,
|
||||||
|
OTHER_AUDIO,
|
||||||
|
REMOVE_CONTROL,
|
||||||
|
PRINTER,
|
||||||
|
SCANNER,
|
||||||
|
CAMERA,
|
||||||
|
WEARABLE,
|
||||||
|
TOY,
|
||||||
|
BLUETOOTH_GENERIC,
|
||||||
|
}
|
||||||
|
const MAJOR_VERSION: number;
|
||||||
|
const MINOR_VERSION: number;
|
||||||
|
const MICRO_VERSION: number;
|
||||||
|
const VERSION: string;
|
||||||
|
/**
|
||||||
|
* Get the DisplayDevice.
|
||||||
|
*/
|
||||||
|
function get_default(): Device;
|
||||||
|
namespace Device {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
device_type: Type;
|
||||||
|
deviceType: Type;
|
||||||
|
native_path: string;
|
||||||
|
nativePath: string;
|
||||||
|
vendor: string;
|
||||||
|
model: string;
|
||||||
|
serial: string;
|
||||||
|
update_time: number;
|
||||||
|
updateTime: number;
|
||||||
|
power_supply: boolean;
|
||||||
|
powerSupply: boolean;
|
||||||
|
online: boolean;
|
||||||
|
energy: number;
|
||||||
|
energy_empty: number;
|
||||||
|
energyEmpty: number;
|
||||||
|
energy_full: number;
|
||||||
|
energyFull: number;
|
||||||
|
energy_full_design: number;
|
||||||
|
energyFullDesign: number;
|
||||||
|
energy_rate: number;
|
||||||
|
energyRate: number;
|
||||||
|
voltage: number;
|
||||||
|
charge_cycles: number;
|
||||||
|
chargeCycles: number;
|
||||||
|
luminosity: number;
|
||||||
|
time_to_empty: number;
|
||||||
|
timeToEmpty: number;
|
||||||
|
time_to_full: number;
|
||||||
|
timeToFull: number;
|
||||||
|
percentage: number;
|
||||||
|
temperature: number;
|
||||||
|
is_present: boolean;
|
||||||
|
isPresent: boolean;
|
||||||
|
state: State;
|
||||||
|
is_rechargable: boolean;
|
||||||
|
isRechargable: boolean;
|
||||||
|
capacity: number;
|
||||||
|
technology: Technology;
|
||||||
|
warning_level: WarningLevel;
|
||||||
|
warningLevel: WarningLevel;
|
||||||
|
battery_level: BatteryLevel;
|
||||||
|
batteryLevel: BatteryLevel;
|
||||||
|
icon_name: string;
|
||||||
|
iconName: string;
|
||||||
|
charging: boolean;
|
||||||
|
is_battery: boolean;
|
||||||
|
isBattery: boolean;
|
||||||
|
battery_icon_name: string;
|
||||||
|
batteryIconName: string;
|
||||||
|
device_type_name: string;
|
||||||
|
deviceTypeName: string;
|
||||||
|
device_type_icon: string;
|
||||||
|
deviceTypeIcon: string;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Client for a UPower [device](https://upower.freedesktop.org/docs/Device.html).
|
||||||
|
*/
|
||||||
|
class Device extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Device>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If it is [enum`AstalBattery`.Type.BATTERY], you will need to verify that the property power-supply has the value `true` before
|
||||||
|
* considering it as a laptop battery. Otherwise it will likely be the battery for a device of an unknown type.
|
||||||
|
*/
|
||||||
|
get device_type(): Type;
|
||||||
|
set device_type(val: Type);
|
||||||
|
/**
|
||||||
|
* If it is [enum`AstalBattery`.Type.BATTERY], you will need to verify that the property power-supply has the value `true` before
|
||||||
|
* considering it as a laptop battery. Otherwise it will likely be the battery for a device of an unknown type.
|
||||||
|
*/
|
||||||
|
get deviceType(): Type;
|
||||||
|
set deviceType(val: Type);
|
||||||
|
/**
|
||||||
|
* Native path of the power source. This is the sysfs path, for example /sys/devices/LNXSYSTM:00/device:00/PNP0C0A:00/power_supply/BAT0. It is
|
||||||
|
* blank if the device is being driven by a user space driver.
|
||||||
|
*/
|
||||||
|
get native_path(): string;
|
||||||
|
set native_path(val: string);
|
||||||
|
/**
|
||||||
|
* Native path of the power source. This is the sysfs path, for example /sys/devices/LNXSYSTM:00/device:00/PNP0C0A:00/power_supply/BAT0. It is
|
||||||
|
* blank if the device is being driven by a user space driver.
|
||||||
|
*/
|
||||||
|
get nativePath(): string;
|
||||||
|
set nativePath(val: string);
|
||||||
|
/**
|
||||||
|
* Name of the vendor of the battery.
|
||||||
|
*/
|
||||||
|
get vendor(): string;
|
||||||
|
set vendor(val: string);
|
||||||
|
/**
|
||||||
|
* Name of the model of this battery.
|
||||||
|
*/
|
||||||
|
get model(): string;
|
||||||
|
set model(val: string);
|
||||||
|
/**
|
||||||
|
* Unique serial number of the battery.
|
||||||
|
*/
|
||||||
|
get serial(): string;
|
||||||
|
set serial(val: string);
|
||||||
|
/**
|
||||||
|
* The point in time (seconds since the Epoch) that data was read from the power source.
|
||||||
|
*/
|
||||||
|
get update_time(): number;
|
||||||
|
set update_time(val: number);
|
||||||
|
/**
|
||||||
|
* The point in time (seconds since the Epoch) that data was read from the power source.
|
||||||
|
*/
|
||||||
|
get updateTime(): number;
|
||||||
|
set updateTime(val: number);
|
||||||
|
/**
|
||||||
|
* If the power device is used to supply the system. This would be set `true` for laptop batteries and UPS devices, but set to `false` for
|
||||||
|
* wireless mice or PDAs.
|
||||||
|
*/
|
||||||
|
get power_supply(): boolean;
|
||||||
|
set power_supply(val: boolean);
|
||||||
|
/**
|
||||||
|
* If the power device is used to supply the system. This would be set `true` for laptop batteries and UPS devices, but set to `false` for
|
||||||
|
* wireless mice or PDAs.
|
||||||
|
*/
|
||||||
|
get powerSupply(): boolean;
|
||||||
|
set powerSupply(val: boolean);
|
||||||
|
/**
|
||||||
|
* Whether power is currently being provided through line power.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.LINE_POWER].
|
||||||
|
*/
|
||||||
|
get online(): boolean;
|
||||||
|
set online(val: boolean);
|
||||||
|
/**
|
||||||
|
* Amount of energy (measured in Wh) currently available in the power source.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get energy(): number;
|
||||||
|
set energy(val: number);
|
||||||
|
/**
|
||||||
|
* Amount of energy (measured in Wh) in the power source when it's considered to be empty.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get energy_empty(): number;
|
||||||
|
set energy_empty(val: number);
|
||||||
|
/**
|
||||||
|
* Amount of energy (measured in Wh) in the power source when it's considered to be empty.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get energyEmpty(): number;
|
||||||
|
set energyEmpty(val: number);
|
||||||
|
/**
|
||||||
|
* Amount of energy (measured in Wh) in the power source when it's considered full.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get energy_full(): number;
|
||||||
|
set energy_full(val: number);
|
||||||
|
/**
|
||||||
|
* Amount of energy (measured in Wh) in the power source when it's considered full.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get energyFull(): number;
|
||||||
|
set energyFull(val: number);
|
||||||
|
/**
|
||||||
|
* Amount of energy (measured in Wh) the power source is designed to hold when it's considered full.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get energy_full_design(): number;
|
||||||
|
set energy_full_design(val: number);
|
||||||
|
/**
|
||||||
|
* Amount of energy (measured in Wh) the power source is designed to hold when it's considered full.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get energyFullDesign(): number;
|
||||||
|
set energyFullDesign(val: number);
|
||||||
|
/**
|
||||||
|
* Amount of energy being drained from the source, measured in W. If positive, the source is being discharged, if negative it's being charged.
|
||||||
|
*
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get energy_rate(): number;
|
||||||
|
set energy_rate(val: number);
|
||||||
|
/**
|
||||||
|
* Amount of energy being drained from the source, measured in W. If positive, the source is being discharged, if negative it's being charged.
|
||||||
|
*
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get energyRate(): number;
|
||||||
|
set energyRate(val: number);
|
||||||
|
/**
|
||||||
|
* Voltage in the Cell or being recorded by the meter.
|
||||||
|
*/
|
||||||
|
get voltage(): number;
|
||||||
|
set voltage(val: number);
|
||||||
|
/**
|
||||||
|
* The number of charge cycles as defined by the TCO certification, or -1 if that value is unknown or not applicable.
|
||||||
|
*/
|
||||||
|
get charge_cycles(): number;
|
||||||
|
set charge_cycles(val: number);
|
||||||
|
/**
|
||||||
|
* The number of charge cycles as defined by the TCO certification, or -1 if that value is unknown or not applicable.
|
||||||
|
*/
|
||||||
|
get chargeCycles(): number;
|
||||||
|
set chargeCycles(val: number);
|
||||||
|
/**
|
||||||
|
* Luminosity being recorded by the meter.
|
||||||
|
*/
|
||||||
|
get luminosity(): number;
|
||||||
|
set luminosity(val: number);
|
||||||
|
/**
|
||||||
|
* Number of seconds until the power source is considered empty. Is set to 0 if unknown.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get time_to_empty(): number;
|
||||||
|
set time_to_empty(val: number);
|
||||||
|
/**
|
||||||
|
* Number of seconds until the power source is considered empty. Is set to 0 if unknown.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get timeToEmpty(): number;
|
||||||
|
set timeToEmpty(val: number);
|
||||||
|
/**
|
||||||
|
* Number of seconds until the power source is considered full. Is set to 0 if unknown.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get time_to_full(): number;
|
||||||
|
set time_to_full(val: number);
|
||||||
|
/**
|
||||||
|
* Number of seconds until the power source is considered full. Is set to 0 if unknown.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get timeToFull(): number;
|
||||||
|
set timeToFull(val: number);
|
||||||
|
/**
|
||||||
|
* The amount of energy left in the power source expressed as a percentage between 0 and 1.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY]. The percentage
|
||||||
|
* will be an approximation if [property`AstalBattery`.Device:battery_level] is set to something other than None.
|
||||||
|
*/
|
||||||
|
get percentage(): number;
|
||||||
|
set percentage(val: number);
|
||||||
|
/**
|
||||||
|
* The temperature of the device in degrees Celsius.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get temperature(): number;
|
||||||
|
set temperature(val: number);
|
||||||
|
/**
|
||||||
|
* If the power source is present in the bay.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get is_present(): boolean;
|
||||||
|
set is_present(val: boolean);
|
||||||
|
/**
|
||||||
|
* If the power source is present in the bay.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get isPresent(): boolean;
|
||||||
|
set isPresent(val: boolean);
|
||||||
|
/**
|
||||||
|
* The battery power state.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get state(): State;
|
||||||
|
set state(val: State);
|
||||||
|
/**
|
||||||
|
* If the power source is rechargeable.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get is_rechargable(): boolean;
|
||||||
|
set is_rechargable(val: boolean);
|
||||||
|
/**
|
||||||
|
* If the power source is rechargeable.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get isRechargable(): boolean;
|
||||||
|
set isRechargable(val: boolean);
|
||||||
|
/**
|
||||||
|
* The capacity of the power source expressed as a percentage between 0 and 1.
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get capacity(): number;
|
||||||
|
set capacity(val: number);
|
||||||
|
/**
|
||||||
|
* Technology used in the battery:
|
||||||
|
* This property is only valid if [property`AstalBattery`.Device:device_type] is [enum`AstalBattery`.Type.BATTERY].
|
||||||
|
*/
|
||||||
|
get technology(): Technology;
|
||||||
|
set technology(val: Technology);
|
||||||
|
/**
|
||||||
|
* Warning level of the battery.
|
||||||
|
*/
|
||||||
|
get warning_level(): WarningLevel;
|
||||||
|
set warning_level(val: WarningLevel);
|
||||||
|
/**
|
||||||
|
* Warning level of the battery.
|
||||||
|
*/
|
||||||
|
get warningLevel(): WarningLevel;
|
||||||
|
set warningLevel(val: WarningLevel);
|
||||||
|
/**
|
||||||
|
* The level of the battery for devices which do not report a percentage but rather a coarse battery level. If the value is None. then the device
|
||||||
|
* does not support coarse battery reporting, and the [property`AstalBattery`.Device:percentage] should be used instead.
|
||||||
|
*/
|
||||||
|
get battery_level(): BatteryLevel;
|
||||||
|
set battery_level(val: BatteryLevel);
|
||||||
|
/**
|
||||||
|
* The level of the battery for devices which do not report a percentage but rather a coarse battery level. If the value is None. then the device
|
||||||
|
* does not support coarse battery reporting, and the [property`AstalBattery`.Device:percentage] should be used instead.
|
||||||
|
*/
|
||||||
|
get batteryLevel(): BatteryLevel;
|
||||||
|
set batteryLevel(val: BatteryLevel);
|
||||||
|
/**
|
||||||
|
* An icon name representing this Device.
|
||||||
|
* NOTE: [property`AstalBattery`.Device:battery_icon_name] might be a better fit as it is calculated from percentage.
|
||||||
|
*/
|
||||||
|
get icon_name(): string;
|
||||||
|
set icon_name(val: string);
|
||||||
|
/**
|
||||||
|
* An icon name representing this Device.
|
||||||
|
* NOTE: [property`AstalBattery`.Device:battery_icon_name] might be a better fit as it is calculated from percentage.
|
||||||
|
*/
|
||||||
|
get iconName(): string;
|
||||||
|
set iconName(val: string);
|
||||||
|
/**
|
||||||
|
* Indicates if [property`AstalBattery`.Device:state] is charging or fully charged.
|
||||||
|
*/
|
||||||
|
get charging(): boolean;
|
||||||
|
set charging(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if [property`AstalBattery`.Device:device_type] is not line power or unknown.
|
||||||
|
*/
|
||||||
|
get is_battery(): boolean;
|
||||||
|
set is_battery(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if [property`AstalBattery`.Device:device_type] is not line power or unknown.
|
||||||
|
*/
|
||||||
|
get isBattery(): boolean;
|
||||||
|
set isBattery(val: boolean);
|
||||||
|
/**
|
||||||
|
* An icon name in the form of "battery-level-$percentage-$state-symbolic".
|
||||||
|
*/
|
||||||
|
get battery_icon_name(): string;
|
||||||
|
set battery_icon_name(val: string);
|
||||||
|
/**
|
||||||
|
* An icon name in the form of "battery-level-$percentage-$state-symbolic".
|
||||||
|
*/
|
||||||
|
get batteryIconName(): string;
|
||||||
|
set batteryIconName(val: string);
|
||||||
|
/**
|
||||||
|
* A string representation of this device's [property`AstalBattery`.Device:device_type].
|
||||||
|
*/
|
||||||
|
get device_type_name(): string;
|
||||||
|
set device_type_name(val: string);
|
||||||
|
/**
|
||||||
|
* A string representation of this device's [property`AstalBattery`.Device:device_type].
|
||||||
|
*/
|
||||||
|
get deviceTypeName(): string;
|
||||||
|
set deviceTypeName(val: string);
|
||||||
|
/**
|
||||||
|
* An icon name that can be used to represent this device's [property`AstalBattery`.Device:device_type].
|
||||||
|
*/
|
||||||
|
get device_type_icon(): string;
|
||||||
|
set device_type_icon(val: string);
|
||||||
|
/**
|
||||||
|
* An icon name that can be used to represent this device's [property`AstalBattery`.Device:device_type].
|
||||||
|
*/
|
||||||
|
get deviceTypeIcon(): string;
|
||||||
|
set deviceTypeIcon(val: string);
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Device.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](path: never): Device;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the DisplayDevice.
|
||||||
|
*/
|
||||||
|
static get_default(): Device | null;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
get_device_type(): Type;
|
||||||
|
get_native_path(): string;
|
||||||
|
get_vendor(): string;
|
||||||
|
get_model(): string;
|
||||||
|
get_serial(): string;
|
||||||
|
get_update_time(): number;
|
||||||
|
get_power_supply(): boolean;
|
||||||
|
get_online(): boolean;
|
||||||
|
get_energy(): number;
|
||||||
|
get_energy_empty(): number;
|
||||||
|
get_energy_full(): number;
|
||||||
|
get_energy_full_design(): number;
|
||||||
|
get_energy_rate(): number;
|
||||||
|
get_voltage(): number;
|
||||||
|
get_charge_cycles(): number;
|
||||||
|
get_luminosity(): number;
|
||||||
|
get_time_to_empty(): number;
|
||||||
|
get_time_to_full(): number;
|
||||||
|
get_percentage(): number;
|
||||||
|
get_temperature(): number;
|
||||||
|
get_is_present(): boolean;
|
||||||
|
get_state(): State;
|
||||||
|
get_is_rechargable(): boolean;
|
||||||
|
get_capacity(): number;
|
||||||
|
get_technology(): Technology;
|
||||||
|
get_warning_level(): WarningLevel;
|
||||||
|
get_battery_level(): BatteryLevel;
|
||||||
|
get_icon_name(): string;
|
||||||
|
get_charging(): boolean;
|
||||||
|
get_is_battery(): boolean;
|
||||||
|
get_battery_icon_name(): string;
|
||||||
|
get_device_type_name(): string;
|
||||||
|
get_device_type_icon(): string;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace UPower {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface DeviceAdded {
|
||||||
|
(device: Device): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface DeviceRemoved {
|
||||||
|
(device: Device): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
devices: Device[];
|
||||||
|
display_device: Device;
|
||||||
|
displayDevice: Device;
|
||||||
|
daemon_version: string;
|
||||||
|
daemonVersion: string;
|
||||||
|
on_battery: boolean;
|
||||||
|
onBattery: boolean;
|
||||||
|
lid_is_closed: boolean;
|
||||||
|
lidIsClosed: boolean;
|
||||||
|
lid_is_present: boolean;
|
||||||
|
lidIsPresent: boolean;
|
||||||
|
critical_action: string;
|
||||||
|
criticalAction: string;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Client for the UPower [dbus interface](https://upower.freedesktop.org/docs/UPower.html).
|
||||||
|
*/
|
||||||
|
class UPower extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<UPower>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* List of UPower devices.
|
||||||
|
*/
|
||||||
|
get devices(): Device[];
|
||||||
|
/**
|
||||||
|
* A composite device that represents the battery status.
|
||||||
|
*/
|
||||||
|
get display_device(): Device;
|
||||||
|
/**
|
||||||
|
* A composite device that represents the battery status.
|
||||||
|
*/
|
||||||
|
get displayDevice(): Device;
|
||||||
|
get daemon_version(): string;
|
||||||
|
get daemonVersion(): string;
|
||||||
|
/**
|
||||||
|
* Indicates whether the system is running on battery power.
|
||||||
|
*/
|
||||||
|
get on_battery(): boolean;
|
||||||
|
/**
|
||||||
|
* Indicates whether the system is running on battery power.
|
||||||
|
*/
|
||||||
|
get onBattery(): boolean;
|
||||||
|
/**
|
||||||
|
* Indicates if the laptop lid is closed where the display cannot be seen.
|
||||||
|
*/
|
||||||
|
get lid_is_closed(): boolean;
|
||||||
|
/**
|
||||||
|
* Indicates if the laptop lid is closed where the display cannot be seen.
|
||||||
|
*/
|
||||||
|
get lidIsClosed(): boolean;
|
||||||
|
/**
|
||||||
|
* Indicates if the system has a lid device.
|
||||||
|
*/
|
||||||
|
get lid_is_present(): boolean;
|
||||||
|
/**
|
||||||
|
* Indicates if the system has a lid device.
|
||||||
|
*/
|
||||||
|
get lidIsPresent(): boolean;
|
||||||
|
/**
|
||||||
|
* When the system's power supply is critical (critically low batteries or UPS), the system will take this action.
|
||||||
|
*/
|
||||||
|
get critical_action(): string;
|
||||||
|
/**
|
||||||
|
* When the system's power supply is critical (critically low batteries or UPS), the system will take this action.
|
||||||
|
*/
|
||||||
|
get criticalAction(): string;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<UPower.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](): UPower;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'device-added', callback: (_source: this, device: Device) => void): number;
|
||||||
|
connect_after(signal: 'device-added', callback: (_source: this, device: Device) => void): number;
|
||||||
|
emit(signal: 'device-added', device: Device): void;
|
||||||
|
connect(signal: 'device-removed', callback: (_source: this, device: Device) => void): number;
|
||||||
|
connect_after(signal: 'device-removed', callback: (_source: this, device: Device) => void): number;
|
||||||
|
emit(signal: 'device-removed', device: Device): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
get_devices(): Device[];
|
||||||
|
get_display_device(): Device;
|
||||||
|
get_daemon_version(): string;
|
||||||
|
get_on_battery(): boolean;
|
||||||
|
get_lid_is_closed(): boolean;
|
||||||
|
get_lid_is_present(): boolean;
|
||||||
|
get_critical_action(): string;
|
||||||
|
}
|
||||||
|
|
||||||
|
type DeviceClass = typeof Device;
|
||||||
|
abstract class DevicePrivate {
|
||||||
|
static $gtype: GObject.GType<DevicePrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type UPowerClass = typeof UPower;
|
||||||
|
abstract class UPowerPrivate {
|
||||||
|
static $gtype: GObject.GType<UPowerPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 AstalBattery;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://AstalBattery' {
|
||||||
|
import AstalBattery01 from 'gi://AstalBattery?version=0.1';
|
||||||
|
export default AstalBattery01;
|
||||||
|
}
|
||||||
|
// END
|
551
@girs/astalbluetooth-0.1.d.ts
vendored
Normal file
551
@girs/astalbluetooth-0.1.d.ts
vendored
Normal file
|
@ -0,0 +1,551 @@
|
||||||
|
/// <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://AstalBluetooth?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 AstalBluetooth {
|
||||||
|
/**
|
||||||
|
* AstalBluetooth-0.1
|
||||||
|
*/
|
||||||
|
|
||||||
|
const MAJOR_VERSION: number;
|
||||||
|
const MINOR_VERSION: number;
|
||||||
|
const MICRO_VERSION: number;
|
||||||
|
const VERSION: string;
|
||||||
|
/**
|
||||||
|
* Gets the default singleton Bluetooth object.
|
||||||
|
*/
|
||||||
|
function get_default(): Bluetooth;
|
||||||
|
namespace Adapter {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
uuids: string[];
|
||||||
|
discovering: boolean;
|
||||||
|
modalias: string;
|
||||||
|
name: string;
|
||||||
|
class: number;
|
||||||
|
address: string;
|
||||||
|
discoverable: boolean;
|
||||||
|
pairable: boolean;
|
||||||
|
powered: boolean;
|
||||||
|
alias: string;
|
||||||
|
discoverable_timeout: number;
|
||||||
|
discoverableTimeout: number;
|
||||||
|
pairable_timeout: number;
|
||||||
|
pairableTimeout: number;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Object representing an [adapter](https://github.com/RadiusNetworks/bluez/blob/master/doc/adapter-api.txt).
|
||||||
|
*/
|
||||||
|
class Adapter extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Adapter>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* List of 128-bit UUIDs that represents the available local services.
|
||||||
|
*/
|
||||||
|
get uuids(): string[];
|
||||||
|
/**
|
||||||
|
* Indicates that a device discovery procedure is active.
|
||||||
|
*/
|
||||||
|
get discovering(): boolean;
|
||||||
|
/**
|
||||||
|
* Local Device ID information in modalias format used by the kernel and udev.
|
||||||
|
*/
|
||||||
|
get modalias(): string;
|
||||||
|
/**
|
||||||
|
* The Bluetooth system name (pretty hostname).
|
||||||
|
*/
|
||||||
|
get name(): string;
|
||||||
|
/**
|
||||||
|
* The Bluetooth class of device.
|
||||||
|
*/
|
||||||
|
get class(): number;
|
||||||
|
/**
|
||||||
|
* The Bluetooth device address.
|
||||||
|
*/
|
||||||
|
get address(): string;
|
||||||
|
/**
|
||||||
|
* Switch an adapter to discoverable or non-discoverable to either make it visible or hide it.
|
||||||
|
*/
|
||||||
|
get discoverable(): boolean;
|
||||||
|
set discoverable(val: boolean);
|
||||||
|
/**
|
||||||
|
* Switch an adapter to pairable or non-pairable.
|
||||||
|
*/
|
||||||
|
get pairable(): boolean;
|
||||||
|
set pairable(val: boolean);
|
||||||
|
/**
|
||||||
|
* Switch an adapter on or off.
|
||||||
|
*/
|
||||||
|
get powered(): boolean;
|
||||||
|
set powered(val: boolean);
|
||||||
|
/**
|
||||||
|
* The Bluetooth friendly name.
|
||||||
|
* In case no alias is set, it will return [property`AstalBluetooth`.Adapter:name].
|
||||||
|
*/
|
||||||
|
get alias(): string;
|
||||||
|
set alias(val: string);
|
||||||
|
/**
|
||||||
|
* The discoverable timeout in seconds. A value of zero means that the timeout is disabled and it will stay in discoverable/limited mode forever
|
||||||
|
* until [method`AstalBluetooth`.Adapter.stop_discovery] is invoked. The default value for the discoverable timeout should be `180`.
|
||||||
|
*/
|
||||||
|
get discoverable_timeout(): number;
|
||||||
|
set discoverable_timeout(val: number);
|
||||||
|
/**
|
||||||
|
* The discoverable timeout in seconds. A value of zero means that the timeout is disabled and it will stay in discoverable/limited mode forever
|
||||||
|
* until [method`AstalBluetooth`.Adapter.stop_discovery] is invoked. The default value for the discoverable timeout should be `180`.
|
||||||
|
*/
|
||||||
|
get discoverableTimeout(): number;
|
||||||
|
set discoverableTimeout(val: number);
|
||||||
|
/**
|
||||||
|
* The pairable timeout in seconds.
|
||||||
|
* A value of zero means that the timeout is disabled and it will stay in pairable mode forever. The default value for pairable timeout should be
|
||||||
|
* disabled `0`.
|
||||||
|
*/
|
||||||
|
get pairable_timeout(): number;
|
||||||
|
set pairable_timeout(val: number);
|
||||||
|
/**
|
||||||
|
* The pairable timeout in seconds.
|
||||||
|
* A value of zero means that the timeout is disabled and it will stay in pairable mode forever. The default value for pairable timeout should be
|
||||||
|
* disabled `0`.
|
||||||
|
*/
|
||||||
|
get pairableTimeout(): number;
|
||||||
|
set pairableTimeout(val: number);
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Adapter.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This removes the remote device and the pairing information.
|
||||||
|
* Possible errors: `InvalidArguments`, `Failed`.
|
||||||
|
* @param device
|
||||||
|
*/
|
||||||
|
remove_device(device: Device): void;
|
||||||
|
/**
|
||||||
|
* This method starts the device discovery procedure.
|
||||||
|
* Possible errors: `NotReady`, `Failed`.
|
||||||
|
*/
|
||||||
|
start_discovery(): void;
|
||||||
|
/**
|
||||||
|
* This method will cancel any previous [method`AstalBluetooth`.Adapter.start_discovery] procedure.
|
||||||
|
* Possible errors: `NotReady`, `Failed`, `NotAuthorized`.
|
||||||
|
*/
|
||||||
|
stop_discovery(): void;
|
||||||
|
get_uuids(): string[];
|
||||||
|
get_discovering(): boolean;
|
||||||
|
get_modalias(): string;
|
||||||
|
get_name(): string;
|
||||||
|
get_class(): number;
|
||||||
|
get_address(): string;
|
||||||
|
get_discoverable(): boolean;
|
||||||
|
set_discoverable(value: boolean): void;
|
||||||
|
get_pairable(): boolean;
|
||||||
|
set_pairable(value: boolean): void;
|
||||||
|
get_powered(): boolean;
|
||||||
|
set_powered(value: boolean): void;
|
||||||
|
get_alias(): string;
|
||||||
|
set_alias(value: string): void;
|
||||||
|
get_discoverable_timeout(): number;
|
||||||
|
set_discoverable_timeout(value: number): void;
|
||||||
|
get_pairable_timeout(): number;
|
||||||
|
set_pairable_timeout(value: number): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Bluetooth {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface DeviceAdded {
|
||||||
|
(device: Device): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface DeviceRemoved {
|
||||||
|
(device: Device): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface AdapterAdded {
|
||||||
|
(adapter: Adapter): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface AdapterRemoved {
|
||||||
|
(adapter: Adapter): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
is_powered: boolean;
|
||||||
|
isPowered: boolean;
|
||||||
|
is_connected: boolean;
|
||||||
|
isConnected: boolean;
|
||||||
|
adapter: Adapter;
|
||||||
|
adapters: Adapter[];
|
||||||
|
devices: Device[];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Manager object for `org.bluez`.
|
||||||
|
*/
|
||||||
|
class Bluetooth extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Bluetooth>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* `true` if any of the [property`AstalBluetooth`.Bluetooth:adapters] are powered.
|
||||||
|
*/
|
||||||
|
get is_powered(): boolean;
|
||||||
|
set is_powered(val: boolean);
|
||||||
|
/**
|
||||||
|
* `true` if any of the [property`AstalBluetooth`.Bluetooth:adapters] are powered.
|
||||||
|
*/
|
||||||
|
get isPowered(): boolean;
|
||||||
|
set isPowered(val: boolean);
|
||||||
|
/**
|
||||||
|
* `true` if any of the [property`AstalBluetooth`.Bluetooth:devices] is connected.
|
||||||
|
*/
|
||||||
|
get is_connected(): boolean;
|
||||||
|
set is_connected(val: boolean);
|
||||||
|
/**
|
||||||
|
* `true` if any of the [property`AstalBluetooth`.Bluetooth:devices] is connected.
|
||||||
|
*/
|
||||||
|
get isConnected(): boolean;
|
||||||
|
set isConnected(val: boolean);
|
||||||
|
/**
|
||||||
|
* The first registered adapter which is usually the only adapter.
|
||||||
|
*/
|
||||||
|
get adapter(): Adapter;
|
||||||
|
/**
|
||||||
|
* List of adapters available on the host device.
|
||||||
|
*/
|
||||||
|
get adapters(): Adapter[];
|
||||||
|
/**
|
||||||
|
* List of registered devices on the `org.bluez` bus.
|
||||||
|
*/
|
||||||
|
get devices(): Device[];
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Bluetooth.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](): Bluetooth;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'device-added', callback: (_source: this, device: Device) => void): number;
|
||||||
|
connect_after(signal: 'device-added', callback: (_source: this, device: Device) => void): number;
|
||||||
|
emit(signal: 'device-added', device: Device): void;
|
||||||
|
connect(signal: 'device-removed', callback: (_source: this, device: Device) => void): number;
|
||||||
|
connect_after(signal: 'device-removed', callback: (_source: this, device: Device) => void): number;
|
||||||
|
emit(signal: 'device-removed', device: Device): void;
|
||||||
|
connect(signal: 'adapter-added', callback: (_source: this, adapter: Adapter) => void): number;
|
||||||
|
connect_after(signal: 'adapter-added', callback: (_source: this, adapter: Adapter) => void): number;
|
||||||
|
emit(signal: 'adapter-added', adapter: Adapter): void;
|
||||||
|
connect(signal: 'adapter-removed', callback: (_source: this, adapter: Adapter) => void): number;
|
||||||
|
connect_after(signal: 'adapter-removed', callback: (_source: this, adapter: Adapter) => void): number;
|
||||||
|
emit(signal: 'adapter-removed', adapter: Adapter): void;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the default singleton Bluetooth object.
|
||||||
|
*/
|
||||||
|
static get_default(): Bluetooth;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Toggle the [property`AstalBluetooth`.Adapter:powered] property of the [property`AstalBluetooth`.Bluetooth:adapter].
|
||||||
|
*/
|
||||||
|
toggle(): void;
|
||||||
|
get_is_powered(): boolean;
|
||||||
|
get_is_connected(): boolean;
|
||||||
|
get_adapter(): Adapter | null;
|
||||||
|
get_adapters(): Adapter[];
|
||||||
|
get_devices(): Device[];
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Device {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
uuids: string[];
|
||||||
|
connected: boolean;
|
||||||
|
legacy_pairing: boolean;
|
||||||
|
legacyPairing: boolean;
|
||||||
|
paired: boolean;
|
||||||
|
rssi: number;
|
||||||
|
adapter: never;
|
||||||
|
address: string;
|
||||||
|
icon: string;
|
||||||
|
modalias: string;
|
||||||
|
name: string;
|
||||||
|
appearance: number;
|
||||||
|
class: number;
|
||||||
|
connecting: boolean;
|
||||||
|
blocked: boolean;
|
||||||
|
trusted: boolean;
|
||||||
|
battery_percentage: number;
|
||||||
|
batteryPercentage: number;
|
||||||
|
alias: string;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Object representing a [device](https://github.com/luetzel/bluez/blob/master/doc/device-api.txt).
|
||||||
|
*/
|
||||||
|
class Device extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Device>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* List of 128-bit UUIDs that represents the available remote services.
|
||||||
|
*/
|
||||||
|
get uuids(): string[];
|
||||||
|
/**
|
||||||
|
* Indicates if the remote device is currently connected.
|
||||||
|
*/
|
||||||
|
get connected(): boolean;
|
||||||
|
/**
|
||||||
|
* `true` if the device only supports the pre-2.1 pairing mechanism.
|
||||||
|
*/
|
||||||
|
get legacy_pairing(): boolean;
|
||||||
|
/**
|
||||||
|
* `true` if the device only supports the pre-2.1 pairing mechanism.
|
||||||
|
*/
|
||||||
|
get legacyPairing(): boolean;
|
||||||
|
/**
|
||||||
|
* Indicates if the remote device is paired.
|
||||||
|
*/
|
||||||
|
get paired(): boolean;
|
||||||
|
/**
|
||||||
|
* Received Signal Strength Indicator of the remote device (inquiry or advertising).
|
||||||
|
*/
|
||||||
|
get rssi(): number;
|
||||||
|
/**
|
||||||
|
* The object path of the adapter the device belongs to.
|
||||||
|
*/
|
||||||
|
get adapter(): never;
|
||||||
|
/**
|
||||||
|
* The Bluetooth device address of the remote device.
|
||||||
|
*/
|
||||||
|
get address(): string;
|
||||||
|
/**
|
||||||
|
* Proposed icon name.
|
||||||
|
*/
|
||||||
|
get icon(): string;
|
||||||
|
/**
|
||||||
|
* Remote Device ID information in modalias format used by the kernel and udev.
|
||||||
|
*/
|
||||||
|
get modalias(): string;
|
||||||
|
/**
|
||||||
|
* The Bluetooth remote name.
|
||||||
|
* It is always better to use [property`AstalBluetooth`.Device:alias].
|
||||||
|
*/
|
||||||
|
get name(): string;
|
||||||
|
/**
|
||||||
|
* External appearance of device, as found on GAP service.
|
||||||
|
*/
|
||||||
|
get appearance(): number;
|
||||||
|
/**
|
||||||
|
* The Bluetooth class of device of the remote device.
|
||||||
|
*/
|
||||||
|
get class(): number;
|
||||||
|
/**
|
||||||
|
* Indicates if this device is currently trying to be connected.
|
||||||
|
*/
|
||||||
|
get connecting(): boolean;
|
||||||
|
set connecting(val: boolean);
|
||||||
|
/**
|
||||||
|
* If set to `true` any incoming connections from the device will be immediately rejected.
|
||||||
|
*/
|
||||||
|
get blocked(): boolean;
|
||||||
|
set blocked(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if the remote is seen as trusted.
|
||||||
|
*/
|
||||||
|
get trusted(): boolean;
|
||||||
|
set trusted(val: boolean);
|
||||||
|
/**
|
||||||
|
* The percentage of battery left on the device if it has one, else -1.
|
||||||
|
*/
|
||||||
|
get battery_percentage(): number;
|
||||||
|
/**
|
||||||
|
* The percentage of battery left on the device if it has one, else -1.
|
||||||
|
*/
|
||||||
|
get batteryPercentage(): number;
|
||||||
|
/**
|
||||||
|
* The name alias for the remote device.
|
||||||
|
* In case no alias is set, it will return the remote device [property`AstalBluetooth`.Device:name].
|
||||||
|
*/
|
||||||
|
get alias(): string;
|
||||||
|
set alias(val: string);
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Device.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This is a generic method to connect any profiles the remote device supports that can be connected to.
|
||||||
|
* Possible errors: `NotReady`, `Failed`, `InProgress`, `AlreadyConnected`.
|
||||||
|
*/
|
||||||
|
connect_device(): Promise<void>;
|
||||||
|
/**
|
||||||
|
* This is a generic method to connect any profiles the remote device supports that can be connected to.
|
||||||
|
* Possible errors: `NotReady`, `Failed`, `InProgress`, `AlreadyConnected`.
|
||||||
|
* @param _callback_
|
||||||
|
*/
|
||||||
|
connect_device(_callback_: Gio.AsyncReadyCallback<this> | null): void;
|
||||||
|
/**
|
||||||
|
* This is a generic method to connect any profiles the remote device supports that can be connected to.
|
||||||
|
* Possible errors: `NotReady`, `Failed`, `InProgress`, `AlreadyConnected`.
|
||||||
|
* @param _callback_
|
||||||
|
*/
|
||||||
|
connect_device(_callback_?: Gio.AsyncReadyCallback<this> | null): Promise<void> | void;
|
||||||
|
connect_device_finish(_res_: Gio.AsyncResult): void;
|
||||||
|
/**
|
||||||
|
* This method gracefully disconnects all connected profiles.
|
||||||
|
* Possible errors: `NotConnected`.
|
||||||
|
*/
|
||||||
|
disconnect_device(): Promise<void>;
|
||||||
|
/**
|
||||||
|
* This method gracefully disconnects all connected profiles.
|
||||||
|
* Possible errors: `NotConnected`.
|
||||||
|
* @param _callback_
|
||||||
|
*/
|
||||||
|
disconnect_device(_callback_: Gio.AsyncReadyCallback<this> | null): void;
|
||||||
|
/**
|
||||||
|
* This method gracefully disconnects all connected profiles.
|
||||||
|
* Possible errors: `NotConnected`.
|
||||||
|
* @param _callback_
|
||||||
|
*/
|
||||||
|
disconnect_device(_callback_?: Gio.AsyncReadyCallback<this> | null): Promise<void> | void;
|
||||||
|
disconnect_device_finish(_res_: Gio.AsyncResult): void;
|
||||||
|
/**
|
||||||
|
* This method connects a specific profile of this device. The UUID provided is the remote service UUID for the profile.
|
||||||
|
* Possible errors: `Failed`, `InProgress`, `InvalidArguments`, `NotAvailable`, `NotReady`.
|
||||||
|
* @param uuid the remote service UUID.
|
||||||
|
*/
|
||||||
|
connect_profile(uuid: string): void;
|
||||||
|
/**
|
||||||
|
* This method disconnects a specific profile of this device.
|
||||||
|
* Possible errors: `Failed`, `InProgress`, `InvalidArguments`, `NotSupported`.
|
||||||
|
* @param uuid the remote service UUID.
|
||||||
|
*/
|
||||||
|
disconnect_profile(uuid: string): void;
|
||||||
|
/**
|
||||||
|
* This method will connect to the remote device and initiate pairing.
|
||||||
|
* Possible errors: `InvalidArguments`, `Failed`, `AlreadyExists`, `AuthenticationCanceled`, `AuthenticationFailed`, `AuthenticationRejected`,
|
||||||
|
* `AuthenticationTimeout`, `ConnectionAttemptFailed`.
|
||||||
|
*/
|
||||||
|
pair(): void;
|
||||||
|
/**
|
||||||
|
* This method can be used to cancel a pairing operation initiated by [method`AstalBluetooth`.Device.pair].
|
||||||
|
* Possible errors: `DoesNotExist`, `Failed`.
|
||||||
|
*/
|
||||||
|
cancel_pairing(): void;
|
||||||
|
get_uuids(): string[];
|
||||||
|
get_connected(): boolean;
|
||||||
|
get_legacy_pairing(): boolean;
|
||||||
|
get_paired(): boolean;
|
||||||
|
get_rssi(): number;
|
||||||
|
get_adapter(): never;
|
||||||
|
get_address(): string;
|
||||||
|
get_icon(): string;
|
||||||
|
get_modalias(): string;
|
||||||
|
get_name(): string;
|
||||||
|
get_appearance(): number;
|
||||||
|
get_class(): number;
|
||||||
|
get_connecting(): boolean;
|
||||||
|
get_blocked(): boolean;
|
||||||
|
set_blocked(value: boolean): void;
|
||||||
|
get_trusted(): boolean;
|
||||||
|
set_trusted(value: boolean): void;
|
||||||
|
get_battery_percentage(): number;
|
||||||
|
get_alias(): string;
|
||||||
|
set_alias(value: string): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type AdapterClass = typeof Adapter;
|
||||||
|
abstract class AdapterPrivate {
|
||||||
|
static $gtype: GObject.GType<AdapterPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type BluetoothClass = typeof Bluetooth;
|
||||||
|
abstract class BluetoothPrivate {
|
||||||
|
static $gtype: GObject.GType<BluetoothPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type DeviceClass = typeof Device;
|
||||||
|
abstract class DevicePrivate {
|
||||||
|
static $gtype: GObject.GType<DevicePrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 AstalBluetooth;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://AstalBluetooth' {
|
||||||
|
import AstalBluetooth01 from 'gi://AstalBluetooth?version=0.1';
|
||||||
|
export default AstalBluetooth01;
|
||||||
|
}
|
||||||
|
// END
|
222
@girs/astalcava-0.1.d.ts
vendored
Normal file
222
@girs/astalcava-0.1.d.ts
vendored
Normal file
|
@ -0,0 +1,222 @@
|
||||||
|
/// <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
|
887
@girs/astalhyprland-0.1.d.ts
vendored
Normal file
887
@girs/astalhyprland-0.1.d.ts
vendored
Normal file
|
@ -0,0 +1,887 @@
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./gio-2.0.d.ts" />
|
||||||
|
/// <reference path="./gobject-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://AstalHyprland?version=0.1' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type Gio from 'gi://Gio?version=2.0';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
import type GModule from 'gi://GModule?version=2.0';
|
||||||
|
|
||||||
|
export namespace AstalHyprland {
|
||||||
|
/**
|
||||||
|
* AstalHyprland-0.1
|
||||||
|
*/
|
||||||
|
|
||||||
|
export namespace MonitorTransform {
|
||||||
|
export const $gtype: GObject.GType<MonitorTransform>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum MonitorTransform {
|
||||||
|
NORMAL,
|
||||||
|
ROTATE_90_DEG,
|
||||||
|
ROTATE_180_DEG,
|
||||||
|
ROTATE_270_DEG,
|
||||||
|
FLIPPED,
|
||||||
|
FLIPPED_ROTATE_90_DEG,
|
||||||
|
FLIPPED_ROTATE_180_DEG,
|
||||||
|
FLIPPED_ROTATE_270_DEG,
|
||||||
|
}
|
||||||
|
const MAJOR_VERSION: number;
|
||||||
|
const MINOR_VERSION: number;
|
||||||
|
const MICRO_VERSION: number;
|
||||||
|
const VERSION: string;
|
||||||
|
function get_default(): Hyprland;
|
||||||
|
|
||||||
|
export namespace Fullscreen {
|
||||||
|
export const $gtype: GObject.GType<Fullscreen>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Fullscreen {
|
||||||
|
CURRENT,
|
||||||
|
NONE,
|
||||||
|
MAXIMIZED,
|
||||||
|
FULLSCREEN,
|
||||||
|
}
|
||||||
|
namespace Client {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface Removed {
|
||||||
|
(): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface MovedTo {
|
||||||
|
(workspace: Workspace): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
address: string;
|
||||||
|
mapped: boolean;
|
||||||
|
hidden: boolean;
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
width: number;
|
||||||
|
height: number;
|
||||||
|
workspace: Workspace;
|
||||||
|
floating: boolean;
|
||||||
|
monitor: Monitor;
|
||||||
|
class: string;
|
||||||
|
title: string;
|
||||||
|
initial_class: string;
|
||||||
|
initialClass: string;
|
||||||
|
initial_title: string;
|
||||||
|
initialTitle: string;
|
||||||
|
pid: number;
|
||||||
|
xwayland: boolean;
|
||||||
|
pinned: boolean;
|
||||||
|
fullscreen: Fullscreen;
|
||||||
|
fullscreen_client: Fullscreen;
|
||||||
|
fullscreenClient: Fullscreen;
|
||||||
|
swallowing: string;
|
||||||
|
focus_history_id: number;
|
||||||
|
focusHistoryId: number;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Client extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Client>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
get address(): string;
|
||||||
|
set address(val: string);
|
||||||
|
get mapped(): boolean;
|
||||||
|
set mapped(val: boolean);
|
||||||
|
get hidden(): boolean;
|
||||||
|
set hidden(val: boolean);
|
||||||
|
get x(): number;
|
||||||
|
set x(val: number);
|
||||||
|
get y(): number;
|
||||||
|
set y(val: number);
|
||||||
|
get width(): number;
|
||||||
|
set width(val: number);
|
||||||
|
get height(): number;
|
||||||
|
set height(val: number);
|
||||||
|
get workspace(): Workspace;
|
||||||
|
set workspace(val: Workspace);
|
||||||
|
get floating(): boolean;
|
||||||
|
set floating(val: boolean);
|
||||||
|
get monitor(): Monitor;
|
||||||
|
set monitor(val: Monitor);
|
||||||
|
get class(): string;
|
||||||
|
set class(val: string);
|
||||||
|
get title(): string;
|
||||||
|
set title(val: string);
|
||||||
|
get initial_class(): string;
|
||||||
|
set initial_class(val: string);
|
||||||
|
get initialClass(): string;
|
||||||
|
set initialClass(val: string);
|
||||||
|
get initial_title(): string;
|
||||||
|
set initial_title(val: string);
|
||||||
|
get initialTitle(): string;
|
||||||
|
set initialTitle(val: string);
|
||||||
|
get pid(): number;
|
||||||
|
set pid(val: number);
|
||||||
|
get xwayland(): boolean;
|
||||||
|
set xwayland(val: boolean);
|
||||||
|
get pinned(): boolean;
|
||||||
|
set pinned(val: boolean);
|
||||||
|
get fullscreen(): Fullscreen;
|
||||||
|
set fullscreen(val: Fullscreen);
|
||||||
|
get fullscreen_client(): Fullscreen;
|
||||||
|
set fullscreen_client(val: Fullscreen);
|
||||||
|
get fullscreenClient(): Fullscreen;
|
||||||
|
set fullscreenClient(val: Fullscreen);
|
||||||
|
get swallowing(): string;
|
||||||
|
set swallowing(val: string);
|
||||||
|
get focus_history_id(): number;
|
||||||
|
set focus_history_id(val: number);
|
||||||
|
get focusHistoryId(): number;
|
||||||
|
set focusHistoryId(val: number);
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Client.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](): Client;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'removed', callback: (_source: this) => void): number;
|
||||||
|
connect_after(signal: 'removed', callback: (_source: this) => void): number;
|
||||||
|
emit(signal: 'removed'): void;
|
||||||
|
connect(signal: 'moved-to', callback: (_source: this, workspace: Workspace) => void): number;
|
||||||
|
connect_after(signal: 'moved-to', callback: (_source: this, workspace: Workspace) => void): number;
|
||||||
|
emit(signal: 'moved-to', workspace: Workspace): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
kill(): void;
|
||||||
|
focus(): void;
|
||||||
|
move_to(ws: Workspace): void;
|
||||||
|
toggle_floating(): void;
|
||||||
|
get_address(): string;
|
||||||
|
get_mapped(): boolean;
|
||||||
|
get_hidden(): boolean;
|
||||||
|
get_x(): number;
|
||||||
|
get_y(): number;
|
||||||
|
get_width(): number;
|
||||||
|
get_height(): number;
|
||||||
|
get_workspace(): Workspace;
|
||||||
|
get_floating(): boolean;
|
||||||
|
get_monitor(): Monitor;
|
||||||
|
get_class(): string;
|
||||||
|
get_title(): string;
|
||||||
|
get_initial_class(): string;
|
||||||
|
get_initial_title(): string;
|
||||||
|
get_pid(): number;
|
||||||
|
get_xwayland(): boolean;
|
||||||
|
get_pinned(): boolean;
|
||||||
|
get_fullscreen(): Fullscreen;
|
||||||
|
get_fullscreen_client(): Fullscreen;
|
||||||
|
get_swallowing(): string;
|
||||||
|
get_focus_history_id(): number;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Hyprland {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface Event {
|
||||||
|
(event: string, args: string): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface Minimize {
|
||||||
|
(client: Client, minimize: boolean): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface Floating {
|
||||||
|
(client: Client, floating: boolean): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface Urgent {
|
||||||
|
(client: Client): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface ClientMoved {
|
||||||
|
(client: Client, ws: Workspace): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface Submap {
|
||||||
|
(name: string): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface KeyboardLayout {
|
||||||
|
(keyboard: string, layout: string): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface ConfigReloaded {
|
||||||
|
(): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface ClientAdded {
|
||||||
|
(client: Client): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface ClientRemoved {
|
||||||
|
(address: string): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface WorkspaceAdded {
|
||||||
|
(workspace: Workspace): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface WorkspaceRemoved {
|
||||||
|
(id: number): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface MonitorAdded {
|
||||||
|
(monitor: Monitor): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface MonitorRemoved {
|
||||||
|
(id: number): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
monitors: Monitor[];
|
||||||
|
workspaces: Workspace[];
|
||||||
|
clients: Client[];
|
||||||
|
focused_workspace: Workspace;
|
||||||
|
focusedWorkspace: Workspace;
|
||||||
|
focused_monitor: Monitor;
|
||||||
|
focusedMonitor: Monitor;
|
||||||
|
focused_client: Client;
|
||||||
|
focusedClient: Client;
|
||||||
|
binds: Bind[];
|
||||||
|
cursor_position: Position;
|
||||||
|
cursorPosition: Position;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Hyprland extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Hyprland>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
get monitors(): Monitor[];
|
||||||
|
get workspaces(): Workspace[];
|
||||||
|
get clients(): Client[];
|
||||||
|
get focused_workspace(): Workspace;
|
||||||
|
set focused_workspace(val: Workspace);
|
||||||
|
get focusedWorkspace(): Workspace;
|
||||||
|
set focusedWorkspace(val: Workspace);
|
||||||
|
get focused_monitor(): Monitor;
|
||||||
|
set focused_monitor(val: Monitor);
|
||||||
|
get focusedMonitor(): Monitor;
|
||||||
|
set focusedMonitor(val: Monitor);
|
||||||
|
get focused_client(): Client;
|
||||||
|
set focused_client(val: Client);
|
||||||
|
get focusedClient(): Client;
|
||||||
|
set focusedClient(val: Client);
|
||||||
|
get binds(): Bind[];
|
||||||
|
get cursor_position(): Position;
|
||||||
|
get cursorPosition(): Position;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Hyprland.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](): Hyprland;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'event', callback: (_source: this, event: string, args: string) => void): number;
|
||||||
|
connect_after(signal: 'event', callback: (_source: this, event: string, args: string) => void): number;
|
||||||
|
emit(signal: 'event', event: string, args: string): void;
|
||||||
|
connect(signal: 'minimize', callback: (_source: this, client: Client, minimize: boolean) => void): number;
|
||||||
|
connect_after(
|
||||||
|
signal: 'minimize',
|
||||||
|
callback: (_source: this, client: Client, minimize: boolean) => void,
|
||||||
|
): number;
|
||||||
|
emit(signal: 'minimize', client: Client, minimize: boolean): void;
|
||||||
|
connect(signal: 'floating', callback: (_source: this, client: Client, floating: boolean) => void): number;
|
||||||
|
connect_after(
|
||||||
|
signal: 'floating',
|
||||||
|
callback: (_source: this, client: Client, floating: boolean) => void,
|
||||||
|
): number;
|
||||||
|
emit(signal: 'floating', client: Client, floating: boolean): void;
|
||||||
|
connect(signal: 'urgent', callback: (_source: this, client: Client) => void): number;
|
||||||
|
connect_after(signal: 'urgent', callback: (_source: this, client: Client) => void): number;
|
||||||
|
emit(signal: 'urgent', client: Client): void;
|
||||||
|
connect(signal: 'client-moved', callback: (_source: this, client: Client, ws: Workspace) => void): number;
|
||||||
|
connect_after(
|
||||||
|
signal: 'client-moved',
|
||||||
|
callback: (_source: this, client: Client, ws: Workspace) => void,
|
||||||
|
): number;
|
||||||
|
emit(signal: 'client-moved', client: Client, ws: Workspace): void;
|
||||||
|
connect(signal: 'submap', callback: (_source: this, name: string) => void): number;
|
||||||
|
connect_after(signal: 'submap', callback: (_source: this, name: string) => void): number;
|
||||||
|
emit(signal: 'submap', name: string): void;
|
||||||
|
connect(
|
||||||
|
signal: 'keyboard-layout',
|
||||||
|
callback: (_source: this, keyboard: string, layout: string) => void,
|
||||||
|
): number;
|
||||||
|
connect_after(
|
||||||
|
signal: 'keyboard-layout',
|
||||||
|
callback: (_source: this, keyboard: string, layout: string) => void,
|
||||||
|
): number;
|
||||||
|
emit(signal: 'keyboard-layout', keyboard: string, layout: string): void;
|
||||||
|
connect(signal: 'config-reloaded', callback: (_source: this) => void): number;
|
||||||
|
connect_after(signal: 'config-reloaded', callback: (_source: this) => void): number;
|
||||||
|
emit(signal: 'config-reloaded'): void;
|
||||||
|
connect(signal: 'client-added', callback: (_source: this, client: Client) => void): number;
|
||||||
|
connect_after(signal: 'client-added', callback: (_source: this, client: Client) => void): number;
|
||||||
|
emit(signal: 'client-added', client: Client): void;
|
||||||
|
connect(signal: 'client-removed', callback: (_source: this, address: string) => void): number;
|
||||||
|
connect_after(signal: 'client-removed', callback: (_source: this, address: string) => void): number;
|
||||||
|
emit(signal: 'client-removed', address: string): void;
|
||||||
|
connect(signal: 'workspace-added', callback: (_source: this, workspace: Workspace) => void): number;
|
||||||
|
connect_after(signal: 'workspace-added', callback: (_source: this, workspace: Workspace) => void): number;
|
||||||
|
emit(signal: 'workspace-added', workspace: Workspace): void;
|
||||||
|
connect(signal: 'workspace-removed', callback: (_source: this, id: number) => void): number;
|
||||||
|
connect_after(signal: 'workspace-removed', callback: (_source: this, id: number) => void): number;
|
||||||
|
emit(signal: 'workspace-removed', id: number): void;
|
||||||
|
connect(signal: 'monitor-added', callback: (_source: this, monitor: Monitor) => void): number;
|
||||||
|
connect_after(signal: 'monitor-added', callback: (_source: this, monitor: Monitor) => void): number;
|
||||||
|
emit(signal: 'monitor-added', monitor: Monitor): void;
|
||||||
|
connect(signal: 'monitor-removed', callback: (_source: this, id: number) => void): number;
|
||||||
|
connect_after(signal: 'monitor-removed', callback: (_source: this, id: number) => void): number;
|
||||||
|
emit(signal: 'monitor-removed', id: number): void;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
static get_default(): Hyprland | null;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
get_monitor(id: number): Monitor;
|
||||||
|
get_workspace(id: number): Workspace;
|
||||||
|
get_client(address: string): Client | null;
|
||||||
|
get_monitor_by_name(name: string): Monitor | null;
|
||||||
|
get_workspace_by_name(name: string): Workspace | null;
|
||||||
|
message(message: string): string;
|
||||||
|
message_async(message: string): Promise<string>;
|
||||||
|
message_async(message: string, _callback_: Gio.AsyncReadyCallback<this> | null): void;
|
||||||
|
message_async(message: string, _callback_?: Gio.AsyncReadyCallback<this> | null): Promise<string> | void;
|
||||||
|
message_finish(_res_: Gio.AsyncResult): string;
|
||||||
|
dispatch(dispatcher: string, args: string): void;
|
||||||
|
move_cursor(x: number, y: number): void;
|
||||||
|
sync_monitors(): Promise<void>;
|
||||||
|
sync_monitors(_callback_: Gio.AsyncReadyCallback<this> | null): void;
|
||||||
|
sync_monitors(_callback_?: Gio.AsyncReadyCallback<this> | null): Promise<void> | void;
|
||||||
|
sync_monitors_finish(_res_: Gio.AsyncResult): void;
|
||||||
|
sync_workspaces(): Promise<void>;
|
||||||
|
sync_workspaces(_callback_: Gio.AsyncReadyCallback<this> | null): void;
|
||||||
|
sync_workspaces(_callback_?: Gio.AsyncReadyCallback<this> | null): Promise<void> | void;
|
||||||
|
sync_workspaces_finish(_res_: Gio.AsyncResult): void;
|
||||||
|
sync_clients(): Promise<void>;
|
||||||
|
sync_clients(_callback_: Gio.AsyncReadyCallback<this> | null): void;
|
||||||
|
sync_clients(_callback_?: Gio.AsyncReadyCallback<this> | null): Promise<void> | void;
|
||||||
|
sync_clients_finish(_res_: Gio.AsyncResult): void;
|
||||||
|
get_monitors(): Monitor[];
|
||||||
|
get_workspaces(): Workspace[];
|
||||||
|
get_clients(): Client[];
|
||||||
|
get_focused_workspace(): Workspace;
|
||||||
|
get_focused_monitor(): Monitor;
|
||||||
|
get_focused_client(): Client;
|
||||||
|
get_binds(): Bind[];
|
||||||
|
get_cursor_position(): Position;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Monitor {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface Removed {
|
||||||
|
(): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
id: number;
|
||||||
|
name: string;
|
||||||
|
description: string;
|
||||||
|
make: string;
|
||||||
|
model: string;
|
||||||
|
serial: string;
|
||||||
|
width: number;
|
||||||
|
height: number;
|
||||||
|
refresh_rate: number;
|
||||||
|
refreshRate: number;
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
active_workspace: Workspace;
|
||||||
|
activeWorkspace: Workspace;
|
||||||
|
special_workspace: Workspace;
|
||||||
|
specialWorkspace: Workspace;
|
||||||
|
reserved_top: number;
|
||||||
|
reservedTop: number;
|
||||||
|
reserved_bottom: number;
|
||||||
|
reservedBottom: number;
|
||||||
|
reserved_left: number;
|
||||||
|
reservedLeft: number;
|
||||||
|
reserved_right: number;
|
||||||
|
reservedRight: number;
|
||||||
|
scale: number;
|
||||||
|
transform: MonitorTransform;
|
||||||
|
focused: boolean;
|
||||||
|
dpms_status: boolean;
|
||||||
|
dpmsStatus: boolean;
|
||||||
|
vrr: boolean;
|
||||||
|
actively_tearing: boolean;
|
||||||
|
activelyTearing: boolean;
|
||||||
|
disabled: boolean;
|
||||||
|
current_format: string;
|
||||||
|
currentFormat: string;
|
||||||
|
available_modes: string[];
|
||||||
|
availableModes: string[];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Monitor extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Monitor>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
get id(): number;
|
||||||
|
set id(val: number);
|
||||||
|
get name(): string;
|
||||||
|
set name(val: string);
|
||||||
|
get description(): string;
|
||||||
|
set description(val: string);
|
||||||
|
get make(): string;
|
||||||
|
set make(val: string);
|
||||||
|
get model(): string;
|
||||||
|
set model(val: string);
|
||||||
|
get serial(): string;
|
||||||
|
set serial(val: string);
|
||||||
|
get width(): number;
|
||||||
|
set width(val: number);
|
||||||
|
get height(): number;
|
||||||
|
set height(val: number);
|
||||||
|
get refresh_rate(): number;
|
||||||
|
set refresh_rate(val: number);
|
||||||
|
get refreshRate(): number;
|
||||||
|
set refreshRate(val: number);
|
||||||
|
get x(): number;
|
||||||
|
set x(val: number);
|
||||||
|
get y(): number;
|
||||||
|
set y(val: number);
|
||||||
|
get active_workspace(): Workspace;
|
||||||
|
set active_workspace(val: Workspace);
|
||||||
|
get activeWorkspace(): Workspace;
|
||||||
|
set activeWorkspace(val: Workspace);
|
||||||
|
get special_workspace(): Workspace;
|
||||||
|
set special_workspace(val: Workspace);
|
||||||
|
get specialWorkspace(): Workspace;
|
||||||
|
set specialWorkspace(val: Workspace);
|
||||||
|
get reserved_top(): number;
|
||||||
|
set reserved_top(val: number);
|
||||||
|
get reservedTop(): number;
|
||||||
|
set reservedTop(val: number);
|
||||||
|
get reserved_bottom(): number;
|
||||||
|
set reserved_bottom(val: number);
|
||||||
|
get reservedBottom(): number;
|
||||||
|
set reservedBottom(val: number);
|
||||||
|
get reserved_left(): number;
|
||||||
|
set reserved_left(val: number);
|
||||||
|
get reservedLeft(): number;
|
||||||
|
set reservedLeft(val: number);
|
||||||
|
get reserved_right(): number;
|
||||||
|
set reserved_right(val: number);
|
||||||
|
get reservedRight(): number;
|
||||||
|
set reservedRight(val: number);
|
||||||
|
get scale(): number;
|
||||||
|
set scale(val: number);
|
||||||
|
get transform(): MonitorTransform;
|
||||||
|
set transform(val: MonitorTransform);
|
||||||
|
get focused(): boolean;
|
||||||
|
set focused(val: boolean);
|
||||||
|
get dpms_status(): boolean;
|
||||||
|
set dpms_status(val: boolean);
|
||||||
|
get dpmsStatus(): boolean;
|
||||||
|
set dpmsStatus(val: boolean);
|
||||||
|
get vrr(): boolean;
|
||||||
|
set vrr(val: boolean);
|
||||||
|
get actively_tearing(): boolean;
|
||||||
|
set actively_tearing(val: boolean);
|
||||||
|
get activelyTearing(): boolean;
|
||||||
|
set activelyTearing(val: boolean);
|
||||||
|
get disabled(): boolean;
|
||||||
|
set disabled(val: boolean);
|
||||||
|
get current_format(): string;
|
||||||
|
set current_format(val: string);
|
||||||
|
get currentFormat(): string;
|
||||||
|
set currentFormat(val: string);
|
||||||
|
get available_modes(): string[];
|
||||||
|
set available_modes(val: string[]);
|
||||||
|
get availableModes(): string[];
|
||||||
|
set availableModes(val: string[]);
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Monitor.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](): Monitor;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'removed', callback: (_source: this) => void): number;
|
||||||
|
connect_after(signal: 'removed', callback: (_source: this) => void): number;
|
||||||
|
emit(signal: 'removed'): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
focus(): void;
|
||||||
|
get_id(): number;
|
||||||
|
get_name(): string;
|
||||||
|
get_description(): string;
|
||||||
|
get_make(): string;
|
||||||
|
get_model(): string;
|
||||||
|
get_serial(): string;
|
||||||
|
get_width(): number;
|
||||||
|
get_height(): number;
|
||||||
|
get_refresh_rate(): number;
|
||||||
|
get_x(): number;
|
||||||
|
get_y(): number;
|
||||||
|
get_active_workspace(): Workspace;
|
||||||
|
get_special_workspace(): Workspace;
|
||||||
|
get_reserved_top(): number;
|
||||||
|
get_reserved_bottom(): number;
|
||||||
|
get_reserved_left(): number;
|
||||||
|
get_reserved_right(): number;
|
||||||
|
get_scale(): number;
|
||||||
|
get_transform(): MonitorTransform;
|
||||||
|
get_focused(): boolean;
|
||||||
|
get_dpms_status(): boolean;
|
||||||
|
get_vrr(): boolean;
|
||||||
|
get_actively_tearing(): boolean;
|
||||||
|
get_disabled(): boolean;
|
||||||
|
get_current_format(): string;
|
||||||
|
get_available_modes(): string[];
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Bind {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
locked: boolean;
|
||||||
|
mouse: boolean;
|
||||||
|
release: boolean;
|
||||||
|
repeat: boolean;
|
||||||
|
long_press: boolean;
|
||||||
|
longPress: boolean;
|
||||||
|
non_consuming: boolean;
|
||||||
|
nonConsuming: boolean;
|
||||||
|
has_description: boolean;
|
||||||
|
hasDescription: boolean;
|
||||||
|
modmask: number;
|
||||||
|
submap: string;
|
||||||
|
key: string;
|
||||||
|
keycode: number;
|
||||||
|
catch_all: boolean;
|
||||||
|
catchAll: boolean;
|
||||||
|
description: string;
|
||||||
|
dispatcher: string;
|
||||||
|
arg: string;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Bind extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Bind>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
get locked(): boolean;
|
||||||
|
set locked(val: boolean);
|
||||||
|
get mouse(): boolean;
|
||||||
|
set mouse(val: boolean);
|
||||||
|
get release(): boolean;
|
||||||
|
set release(val: boolean);
|
||||||
|
get repeat(): boolean;
|
||||||
|
set repeat(val: boolean);
|
||||||
|
get long_press(): boolean;
|
||||||
|
set long_press(val: boolean);
|
||||||
|
get longPress(): boolean;
|
||||||
|
set longPress(val: boolean);
|
||||||
|
get non_consuming(): boolean;
|
||||||
|
set non_consuming(val: boolean);
|
||||||
|
get nonConsuming(): boolean;
|
||||||
|
set nonConsuming(val: boolean);
|
||||||
|
get has_description(): boolean;
|
||||||
|
set has_description(val: boolean);
|
||||||
|
get hasDescription(): boolean;
|
||||||
|
set hasDescription(val: boolean);
|
||||||
|
get modmask(): number;
|
||||||
|
set modmask(val: number);
|
||||||
|
get submap(): string;
|
||||||
|
set submap(val: string);
|
||||||
|
get key(): string;
|
||||||
|
set key(val: string);
|
||||||
|
get keycode(): number;
|
||||||
|
set keycode(val: number);
|
||||||
|
get catch_all(): boolean;
|
||||||
|
set catch_all(val: boolean);
|
||||||
|
get catchAll(): boolean;
|
||||||
|
set catchAll(val: boolean);
|
||||||
|
get description(): string;
|
||||||
|
set description(val: string);
|
||||||
|
get dispatcher(): string;
|
||||||
|
set dispatcher(val: string);
|
||||||
|
get arg(): string;
|
||||||
|
set arg(val: string);
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Bind.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](): Bind;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
get_locked(): boolean;
|
||||||
|
set_locked(value: boolean): void;
|
||||||
|
get_mouse(): boolean;
|
||||||
|
set_mouse(value: boolean): void;
|
||||||
|
get_release(): boolean;
|
||||||
|
set_release(value: boolean): void;
|
||||||
|
get_repeat(): boolean;
|
||||||
|
set_repeat(value: boolean): void;
|
||||||
|
get_long_press(): boolean;
|
||||||
|
set_long_press(value: boolean): void;
|
||||||
|
get_non_consuming(): boolean;
|
||||||
|
set_non_consuming(value: boolean): void;
|
||||||
|
get_has_description(): boolean;
|
||||||
|
set_has_description(value: boolean): void;
|
||||||
|
get_modmask(): number;
|
||||||
|
set_modmask(value: number): void;
|
||||||
|
get_submap(): string;
|
||||||
|
set_submap(value: string): void;
|
||||||
|
get_key(): string;
|
||||||
|
set_key(value: string): void;
|
||||||
|
get_keycode(): number;
|
||||||
|
set_keycode(value: number): void;
|
||||||
|
get_catch_all(): boolean;
|
||||||
|
set_catch_all(value: boolean): void;
|
||||||
|
get_description(): string;
|
||||||
|
set_description(value: string): void;
|
||||||
|
get_dispatcher(): string;
|
||||||
|
set_dispatcher(value: string): void;
|
||||||
|
get_arg(): string;
|
||||||
|
set_arg(value: string): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Position {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Position extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Position>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
get x(): number;
|
||||||
|
set x(val: number);
|
||||||
|
get y(): number;
|
||||||
|
set y(val: number);
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Position.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](): Position;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
get_x(): number;
|
||||||
|
set_x(value: number): void;
|
||||||
|
get_y(): number;
|
||||||
|
set_y(value: number): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Workspace {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface Removed {
|
||||||
|
(): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
id: number;
|
||||||
|
name: string;
|
||||||
|
monitor: Monitor;
|
||||||
|
clients: Client[];
|
||||||
|
has_fullscreen: boolean;
|
||||||
|
hasFullscreen: boolean;
|
||||||
|
last_client: Client;
|
||||||
|
lastClient: Client;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Workspace extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Workspace>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
get id(): number;
|
||||||
|
set id(val: number);
|
||||||
|
get name(): string;
|
||||||
|
set name(val: string);
|
||||||
|
get monitor(): Monitor;
|
||||||
|
set monitor(val: Monitor);
|
||||||
|
get clients(): Client[];
|
||||||
|
get has_fullscreen(): boolean;
|
||||||
|
set has_fullscreen(val: boolean);
|
||||||
|
get hasFullscreen(): boolean;
|
||||||
|
set hasFullscreen(val: boolean);
|
||||||
|
get last_client(): Client;
|
||||||
|
set last_client(val: Client);
|
||||||
|
get lastClient(): Client;
|
||||||
|
set lastClient(val: Client);
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Workspace.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static dummy(id: number, monitor?: Monitor | null): Workspace;
|
||||||
|
|
||||||
|
static ['new'](): Workspace;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'removed', callback: (_source: this) => void): number;
|
||||||
|
connect_after(signal: 'removed', callback: (_source: this) => void): number;
|
||||||
|
emit(signal: 'removed'): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
focus(): void;
|
||||||
|
move_to(m: Monitor): void;
|
||||||
|
get_id(): number;
|
||||||
|
get_name(): string;
|
||||||
|
get_monitor(): Monitor;
|
||||||
|
get_clients(): Client[];
|
||||||
|
get_has_fullscreen(): boolean;
|
||||||
|
get_last_client(): Client;
|
||||||
|
}
|
||||||
|
|
||||||
|
type ClientClass = typeof Client;
|
||||||
|
abstract class ClientPrivate {
|
||||||
|
static $gtype: GObject.GType<ClientPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type HyprlandClass = typeof Hyprland;
|
||||||
|
abstract class HyprlandPrivate {
|
||||||
|
static $gtype: GObject.GType<HyprlandPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type MonitorClass = typeof Monitor;
|
||||||
|
abstract class MonitorPrivate {
|
||||||
|
static $gtype: GObject.GType<MonitorPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type BindClass = typeof Bind;
|
||||||
|
abstract class BindPrivate {
|
||||||
|
static $gtype: GObject.GType<BindPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type PositionClass = typeof Position;
|
||||||
|
abstract class PositionPrivate {
|
||||||
|
static $gtype: GObject.GType<PositionPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type WorkspaceClass = typeof Workspace;
|
||||||
|
abstract class WorkspacePrivate {
|
||||||
|
static $gtype: GObject.GType<WorkspacePrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 AstalHyprland;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://AstalHyprland' {
|
||||||
|
import AstalHyprland01 from 'gi://AstalHyprland?version=0.1';
|
||||||
|
export default AstalHyprland01;
|
||||||
|
}
|
||||||
|
// END
|
1113
@girs/astalio-0.1.d.ts
vendored
Normal file
1113
@girs/astalio-0.1.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
651
@girs/astalmpris-0.1.d.ts
vendored
Normal file
651
@girs/astalmpris-0.1.d.ts
vendored
Normal file
|
@ -0,0 +1,651 @@
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./gobject-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://AstalMpris?version=0.1' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
export namespace AstalMpris {
|
||||||
|
/**
|
||||||
|
* AstalMpris-0.1
|
||||||
|
*/
|
||||||
|
|
||||||
|
export namespace PlaybackStatus {
|
||||||
|
export const $gtype: GObject.GType<PlaybackStatus>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum PlaybackStatus {
|
||||||
|
PLAYING,
|
||||||
|
PAUSED,
|
||||||
|
STOPPED,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace Loop {
|
||||||
|
export const $gtype: GObject.GType<Loop>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Loop {
|
||||||
|
UNSUPPORTED,
|
||||||
|
/**
|
||||||
|
* The playback will stop when there are no more tracks to play.
|
||||||
|
*/
|
||||||
|
NONE,
|
||||||
|
/**
|
||||||
|
* The current track will start again from the begining once it has finished playing.
|
||||||
|
*/
|
||||||
|
TRACK,
|
||||||
|
/**
|
||||||
|
* The playback loops through a list of tracks.
|
||||||
|
*/
|
||||||
|
PLAYLIST,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace Shuffle {
|
||||||
|
export const $gtype: GObject.GType<Shuffle>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Shuffle {
|
||||||
|
UNSUPPORTED,
|
||||||
|
/**
|
||||||
|
* Playback is progressing through a playlist in some other order.
|
||||||
|
*/
|
||||||
|
ON,
|
||||||
|
/**
|
||||||
|
* Playback is progressing linearly through a playlist.
|
||||||
|
*/
|
||||||
|
OFF,
|
||||||
|
}
|
||||||
|
const MAJOR_VERSION: number;
|
||||||
|
const MINOR_VERSION: number;
|
||||||
|
const MICRO_VERSION: number;
|
||||||
|
const VERSION: string;
|
||||||
|
/**
|
||||||
|
* Gets the default singleton Mpris instance.
|
||||||
|
*/
|
||||||
|
function get_default(): Mpris;
|
||||||
|
namespace Mpris {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface PlayerAdded {
|
||||||
|
(player: Player): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface PlayerClosed {
|
||||||
|
(player: Player): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
players: Player[];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Object that monitors dbus for players to appear and disappear.
|
||||||
|
*/
|
||||||
|
class Mpris extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Mpris>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* List of currently available players.
|
||||||
|
*/
|
||||||
|
get players(): Player[];
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Mpris.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](): Mpris;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'player-added', callback: (_source: this, player: Player) => void): number;
|
||||||
|
connect_after(signal: 'player-added', callback: (_source: this, player: Player) => void): number;
|
||||||
|
emit(signal: 'player-added', player: Player): void;
|
||||||
|
connect(signal: 'player-closed', callback: (_source: this, player: Player) => void): number;
|
||||||
|
connect_after(signal: 'player-closed', callback: (_source: this, player: Player) => void): number;
|
||||||
|
emit(signal: 'player-closed', player: Player): void;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the default singleton Mpris instance.
|
||||||
|
*/
|
||||||
|
static get_default(): Mpris;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
get_players(): Player[];
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Player {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
bus_name: string;
|
||||||
|
busName: string;
|
||||||
|
available: boolean;
|
||||||
|
can_quit: boolean;
|
||||||
|
canQuit: boolean;
|
||||||
|
fullscreen: boolean;
|
||||||
|
can_set_fullscreen: boolean;
|
||||||
|
canSetFullscreen: boolean;
|
||||||
|
can_raise: boolean;
|
||||||
|
canRaise: boolean;
|
||||||
|
identity: string;
|
||||||
|
entry: string;
|
||||||
|
supported_uri_schemes: string[];
|
||||||
|
supportedUriSchemes: string[];
|
||||||
|
supported_mime_types: string[];
|
||||||
|
supportedMimeTypes: string[];
|
||||||
|
loop_status: Loop;
|
||||||
|
loopStatus: Loop;
|
||||||
|
rate: number;
|
||||||
|
shuffle_status: Shuffle;
|
||||||
|
shuffleStatus: Shuffle;
|
||||||
|
volume: number;
|
||||||
|
position: number;
|
||||||
|
playback_status: PlaybackStatus;
|
||||||
|
playbackStatus: PlaybackStatus;
|
||||||
|
minimum_rate: number;
|
||||||
|
minimumRate: number;
|
||||||
|
maximum_rate: number;
|
||||||
|
maximumRate: number;
|
||||||
|
can_go_next: boolean;
|
||||||
|
canGoNext: boolean;
|
||||||
|
can_go_previous: boolean;
|
||||||
|
canGoPrevious: boolean;
|
||||||
|
can_play: boolean;
|
||||||
|
canPlay: boolean;
|
||||||
|
can_pause: boolean;
|
||||||
|
canPause: boolean;
|
||||||
|
can_seek: boolean;
|
||||||
|
canSeek: boolean;
|
||||||
|
can_control: boolean;
|
||||||
|
canControl: boolean;
|
||||||
|
metadata: GLib.HashTable<string, GLib.Variant>;
|
||||||
|
trackid: string;
|
||||||
|
length: number;
|
||||||
|
art_url: string;
|
||||||
|
artUrl: string;
|
||||||
|
album: string;
|
||||||
|
album_artist: string;
|
||||||
|
albumArtist: string;
|
||||||
|
artist: string;
|
||||||
|
lyrics: string;
|
||||||
|
title: string;
|
||||||
|
composer: string;
|
||||||
|
comments: string;
|
||||||
|
cover_art: string;
|
||||||
|
coverArt: string;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Object which tracks players through their mpris dbus interface. The most simple way is to use [class`AstalMpris`.Mpris] which tracks
|
||||||
|
* every player, but [class`AstalMpris`.Player] can be constructed for a dedicated players too.
|
||||||
|
*/
|
||||||
|
class Player extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Player>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Full dbus namae of this player.
|
||||||
|
*/
|
||||||
|
get bus_name(): string;
|
||||||
|
set bus_name(val: string);
|
||||||
|
/**
|
||||||
|
* Full dbus namae of this player.
|
||||||
|
*/
|
||||||
|
get busName(): string;
|
||||||
|
set busName(val: string);
|
||||||
|
/**
|
||||||
|
* Indicates if [property`AstalMpris`.Player:bus_name] is available on dbus.
|
||||||
|
*/
|
||||||
|
get available(): boolean;
|
||||||
|
set available(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if [method`AstalMpris`.Player.quit] has any effect.
|
||||||
|
*/
|
||||||
|
get can_quit(): boolean;
|
||||||
|
set can_quit(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if [method`AstalMpris`.Player.quit] has any effect.
|
||||||
|
*/
|
||||||
|
get canQuit(): boolean;
|
||||||
|
set canQuit(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if the player is occupying the fullscreen. This is typically used for videos. Use [method`AstalMpris`.Player.toggle_fullscreen]
|
||||||
|
* to toggle fullscreen state.
|
||||||
|
*/
|
||||||
|
get fullscreen(): boolean;
|
||||||
|
set fullscreen(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if [method`AstalMpris`.Player.toggle_fullscreen] has any effect.
|
||||||
|
*/
|
||||||
|
get can_set_fullscreen(): boolean;
|
||||||
|
set can_set_fullscreen(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if [method`AstalMpris`.Player.toggle_fullscreen] has any effect.
|
||||||
|
*/
|
||||||
|
get canSetFullscreen(): boolean;
|
||||||
|
set canSetFullscreen(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if [method`AstalMpris`.Player.raise] has any effect.
|
||||||
|
*/
|
||||||
|
get can_raise(): boolean;
|
||||||
|
set can_raise(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if [method`AstalMpris`.Player.raise] has any effect.
|
||||||
|
*/
|
||||||
|
get canRaise(): boolean;
|
||||||
|
set canRaise(val: boolean);
|
||||||
|
/**
|
||||||
|
* A human friendly name to identify the player.
|
||||||
|
*/
|
||||||
|
get identity(): string;
|
||||||
|
set identity(val: string);
|
||||||
|
/**
|
||||||
|
* The base name of a .desktop file
|
||||||
|
*/
|
||||||
|
get entry(): string;
|
||||||
|
set entry(val: string);
|
||||||
|
/**
|
||||||
|
* The URI schemes supported by the media player.
|
||||||
|
* This can be viewed as protocols supported by the player in almost all cases. Almost every media player will include support for the "file
|
||||||
|
* " scheme. Other common schemes are "http" and "rtsp".
|
||||||
|
*/
|
||||||
|
get supported_uri_schemes(): string[];
|
||||||
|
set supported_uri_schemes(val: string[]);
|
||||||
|
/**
|
||||||
|
* The URI schemes supported by the media player.
|
||||||
|
* This can be viewed as protocols supported by the player in almost all cases. Almost every media player will include support for the "file
|
||||||
|
* " scheme. Other common schemes are "http" and "rtsp".
|
||||||
|
*/
|
||||||
|
get supportedUriSchemes(): string[];
|
||||||
|
set supportedUriSchemes(val: string[]);
|
||||||
|
/**
|
||||||
|
* The mime-types supported by the player.
|
||||||
|
*/
|
||||||
|
get supported_mime_types(): string[];
|
||||||
|
set supported_mime_types(val: string[]);
|
||||||
|
/**
|
||||||
|
* The mime-types supported by the player.
|
||||||
|
*/
|
||||||
|
get supportedMimeTypes(): string[];
|
||||||
|
set supportedMimeTypes(val: string[]);
|
||||||
|
/**
|
||||||
|
* The current loop/repeat status.
|
||||||
|
*/
|
||||||
|
get loop_status(): Loop;
|
||||||
|
set loop_status(val: Loop);
|
||||||
|
/**
|
||||||
|
* The current loop/repeat status.
|
||||||
|
*/
|
||||||
|
get loopStatus(): Loop;
|
||||||
|
set loopStatus(val: Loop);
|
||||||
|
/**
|
||||||
|
* The current playback rate.
|
||||||
|
*/
|
||||||
|
get rate(): number;
|
||||||
|
set rate(val: number);
|
||||||
|
/**
|
||||||
|
* The current shuffle status.
|
||||||
|
*/
|
||||||
|
get shuffle_status(): Shuffle;
|
||||||
|
set shuffle_status(val: Shuffle);
|
||||||
|
/**
|
||||||
|
* The current shuffle status.
|
||||||
|
*/
|
||||||
|
get shuffleStatus(): Shuffle;
|
||||||
|
set shuffleStatus(val: Shuffle);
|
||||||
|
/**
|
||||||
|
* The current volume level between 0 and 1.
|
||||||
|
*/
|
||||||
|
get volume(): number;
|
||||||
|
set volume(val: number);
|
||||||
|
/**
|
||||||
|
* The current position of the track in seconds. To get a progress percentage simply divide this with [property`AstalMpris`.Player:length].
|
||||||
|
*/
|
||||||
|
get position(): number;
|
||||||
|
set position(val: number);
|
||||||
|
/**
|
||||||
|
* The current playback status.
|
||||||
|
*/
|
||||||
|
get playback_status(): PlaybackStatus;
|
||||||
|
set playback_status(val: PlaybackStatus);
|
||||||
|
/**
|
||||||
|
* The current playback status.
|
||||||
|
*/
|
||||||
|
get playbackStatus(): PlaybackStatus;
|
||||||
|
set playbackStatus(val: PlaybackStatus);
|
||||||
|
/**
|
||||||
|
* The minimum value which the [property`AstalMpris`.Player:rate] can take.
|
||||||
|
*/
|
||||||
|
get minimum_rate(): number;
|
||||||
|
set minimum_rate(val: number);
|
||||||
|
/**
|
||||||
|
* The minimum value which the [property`AstalMpris`.Player:rate] can take.
|
||||||
|
*/
|
||||||
|
get minimumRate(): number;
|
||||||
|
set minimumRate(val: number);
|
||||||
|
/**
|
||||||
|
* The maximum value which the [property`AstalMpris`.Player:rate] can take.
|
||||||
|
*/
|
||||||
|
get maximum_rate(): number;
|
||||||
|
set maximum_rate(val: number);
|
||||||
|
/**
|
||||||
|
* The maximum value which the [property`AstalMpris`.Player:rate] can take.
|
||||||
|
*/
|
||||||
|
get maximumRate(): number;
|
||||||
|
set maximumRate(val: number);
|
||||||
|
/**
|
||||||
|
* Indicates if invoking [method`AstalMpris`.Player.next] has effect.
|
||||||
|
*/
|
||||||
|
get can_go_next(): boolean;
|
||||||
|
set can_go_next(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if invoking [method`AstalMpris`.Player.next] has effect.
|
||||||
|
*/
|
||||||
|
get canGoNext(): boolean;
|
||||||
|
set canGoNext(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if invoking [method`AstalMpris`.Player.previous] has effect.
|
||||||
|
*/
|
||||||
|
get can_go_previous(): boolean;
|
||||||
|
set can_go_previous(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if invoking [method`AstalMpris`.Player.previous] has effect.
|
||||||
|
*/
|
||||||
|
get canGoPrevious(): boolean;
|
||||||
|
set canGoPrevious(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if invoking [method`AstalMpris`.Player.play] has effect.
|
||||||
|
*/
|
||||||
|
get can_play(): boolean;
|
||||||
|
set can_play(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if invoking [method`AstalMpris`.Player.play] has effect.
|
||||||
|
*/
|
||||||
|
get canPlay(): boolean;
|
||||||
|
set canPlay(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if invoking [method`AstalMpris`.Player.pause] has effect.
|
||||||
|
*/
|
||||||
|
get can_pause(): boolean;
|
||||||
|
set can_pause(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if invoking [method`AstalMpris`.Player.pause] has effect.
|
||||||
|
*/
|
||||||
|
get canPause(): boolean;
|
||||||
|
set canPause(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if setting [property`AstalMpris`.Player:position] has effect.
|
||||||
|
*/
|
||||||
|
get can_seek(): boolean;
|
||||||
|
set can_seek(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if setting [property`AstalMpris`.Player:position] has effect.
|
||||||
|
*/
|
||||||
|
get canSeek(): boolean;
|
||||||
|
set canSeek(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if the player can be controlled with methods such as [method`AstalMpris`.Player.play_pause].
|
||||||
|
*/
|
||||||
|
get can_control(): boolean;
|
||||||
|
set can_control(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicates if the player can be controlled with methods such as [method`AstalMpris`.Player.play_pause].
|
||||||
|
*/
|
||||||
|
get canControl(): boolean;
|
||||||
|
set canControl(val: boolean);
|
||||||
|
/**
|
||||||
|
* Metadata hashtable of this player. In languages that cannot introspect this use [method`AstalMpris`.Player.get_meta].
|
||||||
|
*/
|
||||||
|
get metadata(): GLib.HashTable<string, GLib.Variant>;
|
||||||
|
set metadata(val: GLib.HashTable<string, GLib.Variant>);
|
||||||
|
/**
|
||||||
|
* Currently playing track's id.
|
||||||
|
*/
|
||||||
|
get trackid(): string;
|
||||||
|
set trackid(val: string);
|
||||||
|
/**
|
||||||
|
* Length of the currently playing track in seconds.
|
||||||
|
*/
|
||||||
|
get length(): number;
|
||||||
|
set length(val: number);
|
||||||
|
/**
|
||||||
|
* The location of an image representing the track or album. You should always prefer to use [property`AstalMpris`.Player:cover_art].
|
||||||
|
*/
|
||||||
|
get art_url(): string;
|
||||||
|
set art_url(val: string);
|
||||||
|
/**
|
||||||
|
* The location of an image representing the track or album. You should always prefer to use [property`AstalMpris`.Player:cover_art].
|
||||||
|
*/
|
||||||
|
get artUrl(): string;
|
||||||
|
set artUrl(val: string);
|
||||||
|
/**
|
||||||
|
* Title of the currently playing album.
|
||||||
|
*/
|
||||||
|
get album(): string;
|
||||||
|
set album(val: string);
|
||||||
|
/**
|
||||||
|
* Artists of the currently playing album.
|
||||||
|
*/
|
||||||
|
get album_artist(): string;
|
||||||
|
set album_artist(val: string);
|
||||||
|
/**
|
||||||
|
* Artists of the currently playing album.
|
||||||
|
*/
|
||||||
|
get albumArtist(): string;
|
||||||
|
set albumArtist(val: string);
|
||||||
|
/**
|
||||||
|
* Artists of the currently playing track.
|
||||||
|
*/
|
||||||
|
get artist(): string;
|
||||||
|
set artist(val: string);
|
||||||
|
/**
|
||||||
|
* Lyrics of the currently playing track.
|
||||||
|
*/
|
||||||
|
get lyrics(): string;
|
||||||
|
set lyrics(val: string);
|
||||||
|
/**
|
||||||
|
* Title of the currently playing track.
|
||||||
|
*/
|
||||||
|
get title(): string;
|
||||||
|
set title(val: string);
|
||||||
|
/**
|
||||||
|
* Composers of the currently playing track.
|
||||||
|
*/
|
||||||
|
get composer(): string;
|
||||||
|
set composer(val: string);
|
||||||
|
/**
|
||||||
|
* Comments of the currently playing track.
|
||||||
|
*/
|
||||||
|
get comments(): string;
|
||||||
|
set comments(val: string);
|
||||||
|
/**
|
||||||
|
* Path of the cached [property`AstalMpris`.Player:art_url].
|
||||||
|
*/
|
||||||
|
get cover_art(): string;
|
||||||
|
set cover_art(val: string);
|
||||||
|
/**
|
||||||
|
* Path of the cached [property`AstalMpris`.Player:art_url].
|
||||||
|
*/
|
||||||
|
get coverArt(): string;
|
||||||
|
set coverArt(val: string);
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Player.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](name: string): Player;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Brings the player's user interface to the front using any appropriate mechanism available.
|
||||||
|
* The media player may be unable to control how its user interface is displayed, or it may not have a graphical user interface at all. In this
|
||||||
|
* case, the [property`AstalMpris`.Player:can_raise] is `false` and this method does nothing.
|
||||||
|
*/
|
||||||
|
raise(): void;
|
||||||
|
/**
|
||||||
|
* Causes the media player to stop running.
|
||||||
|
* The media player may refuse to allow clients to shut it down. In this case, the [property`AstalMpris`.Player:can_quit] property is false
|
||||||
|
* and this method does nothing.
|
||||||
|
*/
|
||||||
|
quit(): void;
|
||||||
|
/**
|
||||||
|
* Toggle [property`AstalMpris`.Player:fullscreen] state.
|
||||||
|
*/
|
||||||
|
toggle_fullscreen(): void;
|
||||||
|
/**
|
||||||
|
* Skips to the next track in the tracklist. If there is no next track (and endless playback and track repeat are both off), stop
|
||||||
|
* playback. If [property`AstalMpris`.Player:can_go_next] is `false` this method has no effect.
|
||||||
|
*/
|
||||||
|
next(): void;
|
||||||
|
/**
|
||||||
|
* Skips to the previous track in the tracklist. If there is no previous track (and endless playback and track repeat are both off),
|
||||||
|
* stop playback. If [property`AstalMpris`.Player:can_go_previous] is `false` this method has no effect.
|
||||||
|
*/
|
||||||
|
previous(): void;
|
||||||
|
/**
|
||||||
|
* Pauses playback. If playback is already paused, this has no effect. If [property`AstalMpris`.Player:can_pause] is `false` this method has
|
||||||
|
* no effect.
|
||||||
|
*/
|
||||||
|
pause(): void;
|
||||||
|
/**
|
||||||
|
* Pauses playback. If playback is already paused, resumes playback. If playback is stopped, starts playback.
|
||||||
|
*/
|
||||||
|
play_pause(): void;
|
||||||
|
/**
|
||||||
|
* Stops playback. If playback is already stopped, this has no effect. If [property`AstalMpris`.Player:can_control] is `false` this method
|
||||||
|
* has no effect.
|
||||||
|
*/
|
||||||
|
stop(): void;
|
||||||
|
/**
|
||||||
|
* Starts or resumes playback. If already playing, this has no effect. If paused, playback resumes from the current position. If [property@
|
||||||
|
* AstalMpris.Player:can_play] is `false` this method has no effect.
|
||||||
|
*/
|
||||||
|
play(): void;
|
||||||
|
/**
|
||||||
|
* uri scheme should be an element of [property`AstalMpris`.Player:supported_uri_schemes] and the mime-type should match one of the elements
|
||||||
|
* of [property`AstalMpris`.Player:supported_mime_types].
|
||||||
|
* @param uri Uri of the track to load.
|
||||||
|
*/
|
||||||
|
open_uri(uri: string): void;
|
||||||
|
/**
|
||||||
|
* Change [property`AstalMpris`.Player:loop_status] from none to track, from track to playlist, from playlist to none.
|
||||||
|
*/
|
||||||
|
loop(): void;
|
||||||
|
/**
|
||||||
|
* Toggle [property`AstalMpris`.Player:shuffle_status].
|
||||||
|
*/
|
||||||
|
shuffle(): void;
|
||||||
|
/**
|
||||||
|
* Lookup a key from [property`AstalMpris`.Player:metadata]. This method is useful for languages that fail to introspect hashtables.
|
||||||
|
* @param key
|
||||||
|
*/
|
||||||
|
get_meta(key: string): GLib.Variant | null;
|
||||||
|
get_bus_name(): string;
|
||||||
|
get_available(): boolean;
|
||||||
|
get_can_quit(): boolean;
|
||||||
|
get_fullscreen(): boolean;
|
||||||
|
get_can_set_fullscreen(): boolean;
|
||||||
|
get_can_raise(): boolean;
|
||||||
|
get_identity(): string;
|
||||||
|
get_entry(): string;
|
||||||
|
get_supported_uri_schemes(): string[];
|
||||||
|
get_supported_mime_types(): string[];
|
||||||
|
get_loop_status(): Loop;
|
||||||
|
set_loop_status(value: Loop | null): void;
|
||||||
|
get_rate(): number;
|
||||||
|
set_rate(value: number): void;
|
||||||
|
get_shuffle_status(): Shuffle;
|
||||||
|
set_shuffle_status(value: Shuffle | null): void;
|
||||||
|
get_volume(): number;
|
||||||
|
set_volume(value: number): void;
|
||||||
|
get_position(): number;
|
||||||
|
set_position(value: number): void;
|
||||||
|
get_playback_status(): PlaybackStatus;
|
||||||
|
get_minimum_rate(): number;
|
||||||
|
get_maximum_rate(): number;
|
||||||
|
get_can_go_next(): boolean;
|
||||||
|
get_can_go_previous(): boolean;
|
||||||
|
get_can_play(): boolean;
|
||||||
|
get_can_pause(): boolean;
|
||||||
|
get_can_seek(): boolean;
|
||||||
|
get_can_control(): boolean;
|
||||||
|
get_metadata(): GLib.HashTable<string, GLib.Variant>;
|
||||||
|
get_trackid(): string;
|
||||||
|
get_length(): number;
|
||||||
|
get_art_url(): string;
|
||||||
|
get_album(): string;
|
||||||
|
get_album_artist(): string;
|
||||||
|
get_artist(): string;
|
||||||
|
get_lyrics(): string;
|
||||||
|
get_title(): string;
|
||||||
|
get_composer(): string;
|
||||||
|
get_comments(): string;
|
||||||
|
get_cover_art(): string;
|
||||||
|
}
|
||||||
|
|
||||||
|
type MprisClass = typeof Mpris;
|
||||||
|
abstract class MprisPrivate {
|
||||||
|
static $gtype: GObject.GType<MprisPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type PlayerClass = typeof Player;
|
||||||
|
abstract class PlayerPrivate {
|
||||||
|
static $gtype: GObject.GType<PlayerPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 AstalMpris;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://AstalMpris' {
|
||||||
|
import AstalMpris01 from 'gi://AstalMpris?version=0.1';
|
||||||
|
export default AstalMpris01;
|
||||||
|
}
|
||||||
|
// END
|
466
@girs/astalnetwork-0.1.d.ts
vendored
Normal file
466
@girs/astalnetwork-0.1.d.ts
vendored
Normal file
|
@ -0,0 +1,466 @@
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./gobject-2.0.d.ts" />
|
||||||
|
/// <reference path="./nm-1.0.d.ts" />
|
||||||
|
/// <reference path="./gio-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://AstalNetwork?version=0.1' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
import type NM from 'gi://NM?version=1.0';
|
||||||
|
import type Gio from 'gi://Gio?version=2.0';
|
||||||
|
import type GModule from 'gi://GModule?version=2.0';
|
||||||
|
|
||||||
|
export namespace AstalNetwork {
|
||||||
|
/**
|
||||||
|
* AstalNetwork-0.1
|
||||||
|
*/
|
||||||
|
|
||||||
|
export namespace Primary {
|
||||||
|
export const $gtype: GObject.GType<Primary>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Primary {
|
||||||
|
UNKNOWN,
|
||||||
|
WIRED,
|
||||||
|
WIFI,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace State {
|
||||||
|
export const $gtype: GObject.GType<State>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum State {
|
||||||
|
UNKNOWN,
|
||||||
|
ASLEEP,
|
||||||
|
DISCONNECTED,
|
||||||
|
DISCONNECTING,
|
||||||
|
CONNECTING,
|
||||||
|
CONNECTED_LOCAL,
|
||||||
|
CONNECTED_SITE,
|
||||||
|
CONNECTED_GLOBAL,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace Connectivity {
|
||||||
|
export const $gtype: GObject.GType<Connectivity>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Connectivity {
|
||||||
|
UNKNOWN,
|
||||||
|
NONE,
|
||||||
|
PORTAL,
|
||||||
|
LIMITED,
|
||||||
|
FULL,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace DeviceState {
|
||||||
|
export const $gtype: GObject.GType<DeviceState>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum DeviceState {
|
||||||
|
UNKNOWN,
|
||||||
|
UNMANAGED,
|
||||||
|
UNAVAILABLE,
|
||||||
|
DISCONNECTED,
|
||||||
|
PREPARE,
|
||||||
|
CONFIG,
|
||||||
|
NEED_AUTH,
|
||||||
|
IP_CONFIG,
|
||||||
|
IP_CHECK,
|
||||||
|
SECONDARIES,
|
||||||
|
ACTIVATED,
|
||||||
|
DEACTIVATING,
|
||||||
|
FAILED,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace Internet {
|
||||||
|
export const $gtype: GObject.GType<Internet>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Internet {
|
||||||
|
CONNECTED,
|
||||||
|
CONNECTING,
|
||||||
|
DISCONNECTED,
|
||||||
|
}
|
||||||
|
const MAJOR_VERSION: number;
|
||||||
|
const MINOR_VERSION: number;
|
||||||
|
const MICRO_VERSION: number;
|
||||||
|
const VERSION: string;
|
||||||
|
function primary_to_string(): string;
|
||||||
|
function primary_from_connection_type(type: string): Primary;
|
||||||
|
function state_to_string(): string;
|
||||||
|
function connectivity_to_string(): string;
|
||||||
|
function device_state_to_string(): string;
|
||||||
|
function internet_from_device(device: NM.Device): Internet;
|
||||||
|
function internet_to_string(): string;
|
||||||
|
function get_default(): Network;
|
||||||
|
namespace Network {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
client: NM.Client;
|
||||||
|
wifi: Wifi;
|
||||||
|
wired: Wired;
|
||||||
|
primary: Primary;
|
||||||
|
connectivity: Connectivity;
|
||||||
|
state: State;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Network extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Network>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
get client(): NM.Client;
|
||||||
|
set client(val: NM.Client);
|
||||||
|
get wifi(): Wifi;
|
||||||
|
set wifi(val: Wifi);
|
||||||
|
get wired(): Wired;
|
||||||
|
set wired(val: Wired);
|
||||||
|
get primary(): Primary;
|
||||||
|
set primary(val: Primary);
|
||||||
|
get connectivity(): Connectivity;
|
||||||
|
get state(): State;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Network.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](): Network;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
static get_default(): Network;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
get_client(): NM.Client;
|
||||||
|
get_wifi(): Wifi | null;
|
||||||
|
get_wired(): Wired | null;
|
||||||
|
get_primary(): Primary;
|
||||||
|
get_connectivity(): Connectivity;
|
||||||
|
get_state(): State;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Wifi {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface StateChanged {
|
||||||
|
(new_state: DeviceState, old_state: DeviceState, reaseon: NM.DeviceStateReason): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
device: NM.DeviceWifi;
|
||||||
|
active_connection: NM.ActiveConnection;
|
||||||
|
activeConnection: NM.ActiveConnection;
|
||||||
|
active_access_point: AccessPoint;
|
||||||
|
activeAccessPoint: AccessPoint;
|
||||||
|
access_points: AccessPoint[];
|
||||||
|
accessPoints: AccessPoint[];
|
||||||
|
enabled: boolean;
|
||||||
|
internet: Internet;
|
||||||
|
bandwidth: number;
|
||||||
|
ssid: string;
|
||||||
|
strength: number;
|
||||||
|
frequency: number;
|
||||||
|
state: DeviceState;
|
||||||
|
icon_name: string;
|
||||||
|
iconName: string;
|
||||||
|
is_hotspot: boolean;
|
||||||
|
isHotspot: boolean;
|
||||||
|
scanning: boolean;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Wifi extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Wifi>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
get device(): NM.DeviceWifi;
|
||||||
|
set device(val: NM.DeviceWifi);
|
||||||
|
get active_connection(): NM.ActiveConnection;
|
||||||
|
set active_connection(val: NM.ActiveConnection);
|
||||||
|
get activeConnection(): NM.ActiveConnection;
|
||||||
|
set activeConnection(val: NM.ActiveConnection);
|
||||||
|
get active_access_point(): AccessPoint;
|
||||||
|
set active_access_point(val: AccessPoint);
|
||||||
|
get activeAccessPoint(): AccessPoint;
|
||||||
|
set activeAccessPoint(val: AccessPoint);
|
||||||
|
get access_points(): AccessPoint[];
|
||||||
|
get accessPoints(): AccessPoint[];
|
||||||
|
get enabled(): boolean;
|
||||||
|
set enabled(val: boolean);
|
||||||
|
get internet(): Internet;
|
||||||
|
set internet(val: Internet);
|
||||||
|
get bandwidth(): number;
|
||||||
|
set bandwidth(val: number);
|
||||||
|
get ssid(): string;
|
||||||
|
set ssid(val: string);
|
||||||
|
get strength(): number;
|
||||||
|
set strength(val: number);
|
||||||
|
get frequency(): number;
|
||||||
|
set frequency(val: number);
|
||||||
|
get state(): DeviceState;
|
||||||
|
set state(val: DeviceState);
|
||||||
|
get icon_name(): string;
|
||||||
|
set icon_name(val: string);
|
||||||
|
get iconName(): string;
|
||||||
|
set iconName(val: string);
|
||||||
|
get is_hotspot(): boolean;
|
||||||
|
set is_hotspot(val: boolean);
|
||||||
|
get isHotspot(): boolean;
|
||||||
|
set isHotspot(val: boolean);
|
||||||
|
get scanning(): boolean;
|
||||||
|
set scanning(val: boolean);
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Wifi.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(
|
||||||
|
signal: 'state-changed',
|
||||||
|
callback: (
|
||||||
|
_source: this,
|
||||||
|
new_state: DeviceState,
|
||||||
|
old_state: DeviceState,
|
||||||
|
reaseon: NM.DeviceStateReason,
|
||||||
|
) => void,
|
||||||
|
): number;
|
||||||
|
connect_after(
|
||||||
|
signal: 'state-changed',
|
||||||
|
callback: (
|
||||||
|
_source: this,
|
||||||
|
new_state: DeviceState,
|
||||||
|
old_state: DeviceState,
|
||||||
|
reaseon: NM.DeviceStateReason,
|
||||||
|
) => void,
|
||||||
|
): number;
|
||||||
|
emit(
|
||||||
|
signal: 'state-changed',
|
||||||
|
new_state: DeviceState,
|
||||||
|
old_state: DeviceState,
|
||||||
|
reaseon: NM.DeviceStateReason,
|
||||||
|
): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
scan(): void;
|
||||||
|
get_device(): NM.DeviceWifi;
|
||||||
|
set_device(value: NM.DeviceWifi): void;
|
||||||
|
get_active_connection(): NM.ActiveConnection | null;
|
||||||
|
get_active_access_point(): AccessPoint | null;
|
||||||
|
get_access_points(): AccessPoint[];
|
||||||
|
get_enabled(): boolean;
|
||||||
|
set_enabled(value: boolean): void;
|
||||||
|
get_internet(): Internet;
|
||||||
|
get_bandwidth(): number;
|
||||||
|
get_ssid(): string;
|
||||||
|
get_strength(): number;
|
||||||
|
get_frequency(): number;
|
||||||
|
get_state(): DeviceState;
|
||||||
|
get_icon_name(): string;
|
||||||
|
get_is_hotspot(): boolean;
|
||||||
|
get_scanning(): boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Wired {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
device: NM.DeviceEthernet;
|
||||||
|
speed: number;
|
||||||
|
internet: Internet;
|
||||||
|
state: DeviceState;
|
||||||
|
icon_name: string;
|
||||||
|
iconName: string;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Wired extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Wired>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
get device(): NM.DeviceEthernet;
|
||||||
|
set device(val: NM.DeviceEthernet);
|
||||||
|
get speed(): number;
|
||||||
|
set speed(val: number);
|
||||||
|
get internet(): Internet;
|
||||||
|
set internet(val: Internet);
|
||||||
|
get state(): DeviceState;
|
||||||
|
set state(val: DeviceState);
|
||||||
|
get icon_name(): string;
|
||||||
|
set icon_name(val: string);
|
||||||
|
get iconName(): string;
|
||||||
|
set iconName(val: string);
|
||||||
|
|
||||||
|
// Fields
|
||||||
|
|
||||||
|
connection: NM.ActiveConnection;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Wired.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
get_device(): NM.DeviceEthernet;
|
||||||
|
set_device(value: NM.DeviceEthernet): void;
|
||||||
|
get_speed(): number;
|
||||||
|
get_internet(): Internet;
|
||||||
|
get_state(): DeviceState;
|
||||||
|
get_icon_name(): string;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace AccessPoint {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
bandwidth: number;
|
||||||
|
bssid: string;
|
||||||
|
frequency: number;
|
||||||
|
last_seen: number;
|
||||||
|
lastSeen: number;
|
||||||
|
max_bitrate: number;
|
||||||
|
maxBitrate: number;
|
||||||
|
strength: number;
|
||||||
|
icon_name: string;
|
||||||
|
iconName: string;
|
||||||
|
mode: NM.__80211Mode;
|
||||||
|
flags: NM.__80211ApFlags;
|
||||||
|
rsn_flags: NM.__80211ApSecurityFlags;
|
||||||
|
rsnFlags: NM.__80211ApSecurityFlags;
|
||||||
|
wpa_flags: NM.__80211ApSecurityFlags;
|
||||||
|
wpaFlags: NM.__80211ApSecurityFlags;
|
||||||
|
ssid: string;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class AccessPoint extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<AccessPoint>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
get bandwidth(): number;
|
||||||
|
get bssid(): string;
|
||||||
|
get frequency(): number;
|
||||||
|
get last_seen(): number;
|
||||||
|
get lastSeen(): number;
|
||||||
|
get max_bitrate(): number;
|
||||||
|
get maxBitrate(): number;
|
||||||
|
get strength(): number;
|
||||||
|
get icon_name(): string;
|
||||||
|
set icon_name(val: string);
|
||||||
|
get iconName(): string;
|
||||||
|
set iconName(val: string);
|
||||||
|
get mode(): NM.__80211Mode;
|
||||||
|
get flags(): NM.__80211ApFlags;
|
||||||
|
get rsn_flags(): NM.__80211ApSecurityFlags;
|
||||||
|
get rsnFlags(): NM.__80211ApSecurityFlags;
|
||||||
|
get wpa_flags(): NM.__80211ApSecurityFlags;
|
||||||
|
get wpaFlags(): NM.__80211ApSecurityFlags;
|
||||||
|
get ssid(): string;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<AccessPoint.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
get_bandwidth(): number;
|
||||||
|
get_bssid(): string;
|
||||||
|
get_frequency(): number;
|
||||||
|
get_last_seen(): number;
|
||||||
|
get_max_bitrate(): number;
|
||||||
|
get_strength(): number;
|
||||||
|
get_icon_name(): string;
|
||||||
|
get_mode(): NM.__80211Mode;
|
||||||
|
get_flags(): NM.__80211ApFlags;
|
||||||
|
get_rsn_flags(): NM.__80211ApSecurityFlags;
|
||||||
|
get_wpa_flags(): NM.__80211ApSecurityFlags;
|
||||||
|
get_ssid(): string | null;
|
||||||
|
}
|
||||||
|
|
||||||
|
type NetworkClass = typeof Network;
|
||||||
|
abstract class NetworkPrivate {
|
||||||
|
static $gtype: GObject.GType<NetworkPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type WifiClass = typeof Wifi;
|
||||||
|
abstract class WifiPrivate {
|
||||||
|
static $gtype: GObject.GType<WifiPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type WiredClass = typeof Wired;
|
||||||
|
abstract class WiredPrivate {
|
||||||
|
static $gtype: GObject.GType<WiredPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type AccessPointClass = typeof AccessPoint;
|
||||||
|
abstract class AccessPointPrivate {
|
||||||
|
static $gtype: GObject.GType<AccessPointPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 AstalNetwork;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://AstalNetwork' {
|
||||||
|
import AstalNetwork01 from 'gi://AstalNetwork?version=0.1';
|
||||||
|
export default AstalNetwork01;
|
||||||
|
}
|
||||||
|
// END
|
443
@girs/astalnotifd-0.1.d.ts
vendored
Normal file
443
@girs/astalnotifd-0.1.d.ts
vendored
Normal file
|
@ -0,0 +1,443 @@
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./gobject-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://AstalNotifd?version=0.1' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
export namespace AstalNotifd {
|
||||||
|
/**
|
||||||
|
* AstalNotifd-0.1
|
||||||
|
*/
|
||||||
|
|
||||||
|
export namespace ClosedReason {
|
||||||
|
export const $gtype: GObject.GType<ClosedReason>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum ClosedReason {
|
||||||
|
EXPIRED,
|
||||||
|
DISMISSED_BY_USER,
|
||||||
|
CLOSED,
|
||||||
|
UNDEFINED,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace Urgency {
|
||||||
|
export const $gtype: GObject.GType<Urgency>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Urgency {
|
||||||
|
LOW,
|
||||||
|
NORMAL,
|
||||||
|
CRITICAL,
|
||||||
|
}
|
||||||
|
const MAJOR_VERSION: number;
|
||||||
|
const MINOR_VERSION: number;
|
||||||
|
const MICRO_VERSION: number;
|
||||||
|
const VERSION: string;
|
||||||
|
function get_default(): Notifd;
|
||||||
|
namespace Notifd {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface Notified {
|
||||||
|
(id: number, replaced: boolean): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface Resolved {
|
||||||
|
(id: number, reason: ClosedReason): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
ignore_timeout: boolean;
|
||||||
|
ignoreTimeout: boolean;
|
||||||
|
dont_disturb: boolean;
|
||||||
|
dontDisturb: boolean;
|
||||||
|
notifications: Notification[];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The Notification daemon.
|
||||||
|
* This class queues up to become the next daemon, while acting as a proxy in the meantime.
|
||||||
|
*/
|
||||||
|
class Notifd extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Notifd>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Ignore the timeout specified by incoming notifications.
|
||||||
|
* By default notifications can specify a timeout in milliseconds after which the daemon will resolve them even without user input.
|
||||||
|
*/
|
||||||
|
get ignore_timeout(): boolean;
|
||||||
|
set ignore_timeout(val: boolean);
|
||||||
|
/**
|
||||||
|
* Ignore the timeout specified by incoming notifications.
|
||||||
|
* By default notifications can specify a timeout in milliseconds after which the daemon will resolve them even without user input.
|
||||||
|
*/
|
||||||
|
get ignoreTimeout(): boolean;
|
||||||
|
set ignoreTimeout(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicate to frontends to not show popups to the user.
|
||||||
|
* This property does not have any effect on its own, its merely a value to use between the daemon process and proxies for frontends to use.
|
||||||
|
*/
|
||||||
|
get dont_disturb(): boolean;
|
||||||
|
set dont_disturb(val: boolean);
|
||||||
|
/**
|
||||||
|
* Indicate to frontends to not show popups to the user.
|
||||||
|
* This property does not have any effect on its own, its merely a value to use between the daemon process and proxies for frontends to use.
|
||||||
|
*/
|
||||||
|
get dontDisturb(): boolean;
|
||||||
|
set dontDisturb(val: boolean);
|
||||||
|
/**
|
||||||
|
* List of currently unresolved notifications.
|
||||||
|
*/
|
||||||
|
get notifications(): Notification[];
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Notifd.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](): Notifd;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'notified', callback: (_source: this, id: number, replaced: boolean) => void): number;
|
||||||
|
connect_after(signal: 'notified', callback: (_source: this, id: number, replaced: boolean) => void): number;
|
||||||
|
emit(signal: 'notified', id: number, replaced: boolean): void;
|
||||||
|
connect(signal: 'resolved', callback: (_source: this, id: number, reason: ClosedReason) => void): number;
|
||||||
|
connect_after(
|
||||||
|
signal: 'resolved',
|
||||||
|
callback: (_source: this, id: number, reason: ClosedReason) => void,
|
||||||
|
): number;
|
||||||
|
emit(signal: 'resolved', id: number, reason: ClosedReason): void;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the singleton instance
|
||||||
|
*/
|
||||||
|
static get_default(): Notifd;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the [class`AstalNotifd`.Notification] with id or null if there is no such Notification.
|
||||||
|
* @param id
|
||||||
|
*/
|
||||||
|
get_notification(id: number): Notification;
|
||||||
|
get_ignore_timeout(): boolean;
|
||||||
|
set_ignore_timeout(value: boolean): void;
|
||||||
|
get_dont_disturb(): boolean;
|
||||||
|
set_dont_disturb(value: boolean): void;
|
||||||
|
get_notifications(): Notification[];
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Notification {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface Resolved {
|
||||||
|
(reason: ClosedReason): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface Invoked {
|
||||||
|
(action_id: string): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
time: number;
|
||||||
|
app_name: string;
|
||||||
|
appName: string;
|
||||||
|
app_icon: string;
|
||||||
|
appIcon: string;
|
||||||
|
summary: string;
|
||||||
|
body: string;
|
||||||
|
id: number;
|
||||||
|
expire_timeout: number;
|
||||||
|
expireTimeout: number;
|
||||||
|
actions: Action[];
|
||||||
|
image: string;
|
||||||
|
action_icons: boolean;
|
||||||
|
actionIcons: boolean;
|
||||||
|
category: string;
|
||||||
|
desktop_entry: string;
|
||||||
|
desktopEntry: string;
|
||||||
|
resident: boolean;
|
||||||
|
sound_file: string;
|
||||||
|
soundFile: string;
|
||||||
|
sound_name: string;
|
||||||
|
soundName: string;
|
||||||
|
suppress_sound: boolean;
|
||||||
|
suppressSound: boolean;
|
||||||
|
transient: boolean;
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
urgency: Urgency;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class representing a notification.
|
||||||
|
*/
|
||||||
|
class Notification extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Notification>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Unix time of when the notification was sent.
|
||||||
|
*/
|
||||||
|
get time(): number;
|
||||||
|
set time(val: number);
|
||||||
|
/**
|
||||||
|
* Name of the sending application.
|
||||||
|
*/
|
||||||
|
get app_name(): string;
|
||||||
|
set app_name(val: string);
|
||||||
|
/**
|
||||||
|
* Name of the sending application.
|
||||||
|
*/
|
||||||
|
get appName(): string;
|
||||||
|
set appName(val: string);
|
||||||
|
/**
|
||||||
|
* Icon name of the sending application.
|
||||||
|
*/
|
||||||
|
get app_icon(): string;
|
||||||
|
set app_icon(val: string);
|
||||||
|
/**
|
||||||
|
* Icon name of the sending application.
|
||||||
|
*/
|
||||||
|
get appIcon(): string;
|
||||||
|
set appIcon(val: string);
|
||||||
|
/**
|
||||||
|
* Single line overview of the notification.
|
||||||
|
*/
|
||||||
|
get summary(): string;
|
||||||
|
set summary(val: string);
|
||||||
|
/**
|
||||||
|
* Multi-line body of text, where each line is a paragraph. May contain markup.
|
||||||
|
*/
|
||||||
|
get body(): string;
|
||||||
|
set body(val: string);
|
||||||
|
/**
|
||||||
|
* Id of the notification.
|
||||||
|
*/
|
||||||
|
get id(): number;
|
||||||
|
set id(val: number);
|
||||||
|
/**
|
||||||
|
* Time in milliseconds after the notification expires.
|
||||||
|
*/
|
||||||
|
get expire_timeout(): number;
|
||||||
|
set expire_timeout(val: number);
|
||||||
|
/**
|
||||||
|
* Time in milliseconds after the notification expires.
|
||||||
|
*/
|
||||||
|
get expireTimeout(): number;
|
||||||
|
set expireTimeout(val: number);
|
||||||
|
/**
|
||||||
|
* List of [struct`AstalNotifd`.Action] of the notification.
|
||||||
|
* Can be invoked by calling [method`AstalNotifd`.Notification.invoke] with the action's id.
|
||||||
|
*/
|
||||||
|
get actions(): Action[];
|
||||||
|
/**
|
||||||
|
* Path of an image
|
||||||
|
*/
|
||||||
|
get image(): string;
|
||||||
|
/**
|
||||||
|
* Indicates whether [struct`AstalNotifd`.Action] identifier should be interpreted as a named icon.
|
||||||
|
*/
|
||||||
|
get action_icons(): boolean;
|
||||||
|
/**
|
||||||
|
* Indicates whether [struct`AstalNotifd`.Action] identifier should be interpreted as a named icon.
|
||||||
|
*/
|
||||||
|
get actionIcons(): boolean;
|
||||||
|
/**
|
||||||
|
* [](https://specifications.freedesktop.org/notification-spec/latest/categories.html)
|
||||||
|
*/
|
||||||
|
get category(): string;
|
||||||
|
/**
|
||||||
|
* Specifies the name of the desktop filename representing the calling program.
|
||||||
|
*/
|
||||||
|
get desktop_entry(): string;
|
||||||
|
/**
|
||||||
|
* Specifies the name of the desktop filename representing the calling program.
|
||||||
|
*/
|
||||||
|
get desktopEntry(): string;
|
||||||
|
/**
|
||||||
|
* Indicates whether notification is kept after action invocation.
|
||||||
|
*/
|
||||||
|
get resident(): boolean;
|
||||||
|
/**
|
||||||
|
* The path to a sound file to play when the notification pops up.
|
||||||
|
*/
|
||||||
|
get sound_file(): string;
|
||||||
|
/**
|
||||||
|
* The path to a sound file to play when the notification pops up.
|
||||||
|
*/
|
||||||
|
get soundFile(): string;
|
||||||
|
/**
|
||||||
|
* A themeable named sound from to play when the notification pops up
|
||||||
|
*/
|
||||||
|
get sound_name(): string;
|
||||||
|
/**
|
||||||
|
* A themeable named sound from to play when the notification pops up
|
||||||
|
*/
|
||||||
|
get soundName(): string;
|
||||||
|
/**
|
||||||
|
* Indicates to suppress playing any sounds.
|
||||||
|
*/
|
||||||
|
get suppress_sound(): boolean;
|
||||||
|
/**
|
||||||
|
* Indicates to suppress playing any sounds.
|
||||||
|
*/
|
||||||
|
get suppressSound(): boolean;
|
||||||
|
/**
|
||||||
|
* Indicates that the notification should be excluded from persistency.
|
||||||
|
*/
|
||||||
|
get transient(): boolean;
|
||||||
|
/**
|
||||||
|
* Specifies the X location on the screen that the notification should point to. The "y" hint must also be specified.
|
||||||
|
*/
|
||||||
|
get x(): number;
|
||||||
|
/**
|
||||||
|
* Specifies the Y location on the screen that the notification should point to. The "x" hint must also be specified.
|
||||||
|
*/
|
||||||
|
get y(): number;
|
||||||
|
/**
|
||||||
|
* [enum`AstalNotifd`.Urgency] level of the notification.
|
||||||
|
*/
|
||||||
|
get urgency(): Urgency;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Notification.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'resolved', callback: (_source: this, reason: ClosedReason) => void): number;
|
||||||
|
connect_after(signal: 'resolved', callback: (_source: this, reason: ClosedReason) => void): number;
|
||||||
|
emit(signal: 'resolved', reason: ClosedReason): void;
|
||||||
|
connect(signal: 'invoked', callback: (_source: this, action_id: string) => void): number;
|
||||||
|
connect_after(signal: 'invoked', callback: (_source: this, action_id: string) => void): number;
|
||||||
|
emit(signal: 'invoked', action_id: string): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
get_hint(hint: string): GLib.Variant | null;
|
||||||
|
get_str_hint(hint: string): string;
|
||||||
|
get_bool_hint(hint: string): boolean;
|
||||||
|
get_int_hint(hint: string): number;
|
||||||
|
get_byte_hint(hint: string): number;
|
||||||
|
/**
|
||||||
|
* Resolve this notification with [enum`AstalNotifd`.ClosedReason.DISMISSED_BY_USER].
|
||||||
|
*/
|
||||||
|
dismiss(): void;
|
||||||
|
/**
|
||||||
|
* Invoke an [struct`AstalNotifd`.Action] of this notification.
|
||||||
|
* Note that this method just notifies the client that this action was invoked by the user. If for example this notification persists through the
|
||||||
|
* lifetime of the sending program this action will have no effect.
|
||||||
|
* @param action_id
|
||||||
|
*/
|
||||||
|
invoke(action_id: string): void;
|
||||||
|
get_time(): number;
|
||||||
|
get_app_name(): string;
|
||||||
|
get_app_icon(): string;
|
||||||
|
get_summary(): string;
|
||||||
|
get_body(): string;
|
||||||
|
get_id(): number;
|
||||||
|
get_expire_timeout(): number;
|
||||||
|
get_actions(): Action[];
|
||||||
|
get_image(): string;
|
||||||
|
get_action_icons(): boolean;
|
||||||
|
get_category(): string;
|
||||||
|
get_desktop_entry(): string;
|
||||||
|
get_resident(): boolean;
|
||||||
|
get_sound_file(): string;
|
||||||
|
get_sound_name(): string;
|
||||||
|
get_suppress_sound(): boolean;
|
||||||
|
get_transient(): boolean;
|
||||||
|
get_x(): number;
|
||||||
|
get_y(): number;
|
||||||
|
get_urgency(): Urgency;
|
||||||
|
}
|
||||||
|
|
||||||
|
type NotifdClass = typeof Notifd;
|
||||||
|
abstract class NotifdPrivate {
|
||||||
|
static $gtype: GObject.GType<NotifdPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type NotificationClass = typeof Notification;
|
||||||
|
abstract class NotificationPrivate {
|
||||||
|
static $gtype: GObject.GType<NotificationPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Action {
|
||||||
|
static $gtype: GObject.GType<Action>;
|
||||||
|
|
||||||
|
// Fields
|
||||||
|
|
||||||
|
id: string;
|
||||||
|
label: string;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
properties?: Partial<{
|
||||||
|
id: string;
|
||||||
|
label: string;
|
||||||
|
}>,
|
||||||
|
);
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 AstalNotifd;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://AstalNotifd' {
|
||||||
|
import AstalNotifd01 from 'gi://AstalNotifd?version=0.1';
|
||||||
|
export default AstalNotifd01;
|
||||||
|
}
|
||||||
|
// END
|
224
@girs/astalpowerprofiles-0.1.d.ts
vendored
Normal file
224
@girs/astalpowerprofiles-0.1.d.ts
vendored
Normal file
|
@ -0,0 +1,224 @@
|
||||||
|
/// <reference path="./gobject-2.0.d.ts" />
|
||||||
|
/// <reference path="./glib-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://AstalPowerProfiles?version=0.1' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
|
||||||
|
export namespace AstalPowerProfiles {
|
||||||
|
/**
|
||||||
|
* AstalPowerProfiles-0.1
|
||||||
|
*/
|
||||||
|
|
||||||
|
const MAJOR_VERSION: number;
|
||||||
|
const MINOR_VERSION: number;
|
||||||
|
const MICRO_VERSION: number;
|
||||||
|
const VERSION: string;
|
||||||
|
function get_default(): PowerProfiles;
|
||||||
|
namespace PowerProfiles {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface ProfileReleased {
|
||||||
|
(cookie: number): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
active_profile: string;
|
||||||
|
activeProfile: string;
|
||||||
|
icon_name: string;
|
||||||
|
iconName: string;
|
||||||
|
actions: string[];
|
||||||
|
performance_degraded: string;
|
||||||
|
performanceDegraded: string;
|
||||||
|
version: string;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Client for <ulink url="https://freedesktop-team.pages.debian.net/power-profiles-daemon/gdbus-org.freedesktop.UPower.PowerProfiles.html">
|
||||||
|
* PowerProfiles</ulink>.
|
||||||
|
*/
|
||||||
|
class PowerProfiles extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<PowerProfiles>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The type of the currently active profile. It might change automatically if a profile is held, using the [method@
|
||||||
|
* AstalPowerProfiles.PowerProfiles.hold_profile] method.
|
||||||
|
*/
|
||||||
|
get active_profile(): string;
|
||||||
|
set active_profile(val: string);
|
||||||
|
/**
|
||||||
|
* The type of the currently active profile. It might change automatically if a profile is held, using the [method@
|
||||||
|
* AstalPowerProfiles.PowerProfiles.hold_profile] method.
|
||||||
|
*/
|
||||||
|
get activeProfile(): string;
|
||||||
|
set activeProfile(val: string);
|
||||||
|
/**
|
||||||
|
* Return a named icon based [property`AstalPowerProfiles`.PowerProfiles:active_profile].
|
||||||
|
*/
|
||||||
|
get icon_name(): string;
|
||||||
|
/**
|
||||||
|
* Return a named icon based [property`AstalPowerProfiles`.PowerProfiles:active_profile].
|
||||||
|
*/
|
||||||
|
get iconName(): string;
|
||||||
|
/**
|
||||||
|
* List of the "actions" implemented in the running daemon. This can used to figure out whether particular functionality is available in
|
||||||
|
* the daemon.
|
||||||
|
*/
|
||||||
|
get actions(): string[];
|
||||||
|
/**
|
||||||
|
* This will be set if the performance power profile is running in degraded mode, with the value being used to identify the reason for that
|
||||||
|
* degradation. Possible values are: - "lap-detected" (the computer is sitting on the user's lap) - "high-operating-
|
||||||
|
* temperature" (the computer is close to overheating) - "" (the empty string, if not performance is not degraded)
|
||||||
|
*/
|
||||||
|
get performance_degraded(): string;
|
||||||
|
/**
|
||||||
|
* This will be set if the performance power profile is running in degraded mode, with the value being used to identify the reason for that
|
||||||
|
* degradation. Possible values are: - "lap-detected" (the computer is sitting on the user's lap) - "high-operating-
|
||||||
|
* temperature" (the computer is close to overheating) - "" (the empty string, if not performance is not degraded)
|
||||||
|
*/
|
||||||
|
get performanceDegraded(): string;
|
||||||
|
/**
|
||||||
|
* The version of the power-profiles-daemon software.
|
||||||
|
*/
|
||||||
|
get version(): string;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<PowerProfiles.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](): PowerProfiles;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'profile-released', callback: (_source: this, cookie: number) => void): number;
|
||||||
|
connect_after(signal: 'profile-released', callback: (_source: this, cookie: number) => void): number;
|
||||||
|
emit(signal: 'profile-released', cookie: number): void;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the default singleton PowerProfiles instance.
|
||||||
|
*/
|
||||||
|
static get_default(): PowerProfiles;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This forces the passed profile (either 'power-saver' or 'performance') to be activated until either the caller
|
||||||
|
* quits, [method`AstalPowerProfiles`.PowerProfiles.release_profile] is called, or the [property@
|
||||||
|
* AstalPowerProfiles.PowerProfiles:active_profile] is changed by the user. When conflicting profiles are requested to be held, the 'power-saver
|
||||||
|
* ' profile will be activated in preference to the 'performance' profile. Those holds will be automatically cancelled if the user
|
||||||
|
* manually switches to another profile, and the [signal`AstalPowerProfiles`.PowerProfiles::profile_released] signal will be emitted.
|
||||||
|
* @param profile
|
||||||
|
* @param reason
|
||||||
|
* @param application_id
|
||||||
|
*/
|
||||||
|
hold_profile(profile: string, reason: string, application_id: string): number;
|
||||||
|
/**
|
||||||
|
* This removes the hold that was set on a profile.
|
||||||
|
* @param cookie
|
||||||
|
*/
|
||||||
|
release_profile(cookie: number): void;
|
||||||
|
get_active_profile(): string;
|
||||||
|
set_active_profile(value: string): void;
|
||||||
|
get_icon_name(): string;
|
||||||
|
get_actions(): string[];
|
||||||
|
get_active_profile_holds(): Hold[];
|
||||||
|
get_performance_degraded(): string;
|
||||||
|
get_profiles(): Profile[];
|
||||||
|
get_version(): string;
|
||||||
|
}
|
||||||
|
|
||||||
|
type PowerProfilesClass = typeof PowerProfiles;
|
||||||
|
abstract class PowerProfilesPrivate {
|
||||||
|
static $gtype: GObject.GType<PowerProfilesPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Profile {
|
||||||
|
static $gtype: GObject.GType<Profile>;
|
||||||
|
|
||||||
|
// Fields
|
||||||
|
|
||||||
|
profile: string;
|
||||||
|
cpu_driver: string;
|
||||||
|
platform_driver: string;
|
||||||
|
driver: string;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
properties?: Partial<{
|
||||||
|
profile: string;
|
||||||
|
cpu_driver: string;
|
||||||
|
platform_driver: string;
|
||||||
|
driver: string;
|
||||||
|
}>,
|
||||||
|
);
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Hold {
|
||||||
|
static $gtype: GObject.GType<Hold>;
|
||||||
|
|
||||||
|
// Fields
|
||||||
|
|
||||||
|
application_id: string;
|
||||||
|
profile: string;
|
||||||
|
reason: string;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
properties?: Partial<{
|
||||||
|
application_id: string;
|
||||||
|
profile: string;
|
||||||
|
reason: string;
|
||||||
|
}>,
|
||||||
|
);
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 AstalPowerProfiles;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://AstalPowerProfiles' {
|
||||||
|
import AstalPowerProfiles01 from 'gi://AstalPowerProfiles?version=0.1';
|
||||||
|
export default AstalPowerProfiles01;
|
||||||
|
}
|
||||||
|
// END
|
419
@girs/astaltray-0.1.d.ts
vendored
Normal file
419
@girs/astaltray-0.1.d.ts
vendored
Normal file
|
@ -0,0 +1,419 @@
|
||||||
|
/// <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" />
|
||||||
|
/// <reference path="./gdkpixbuf-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://AstalTray?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';
|
||||||
|
import type GdkPixbuf from 'gi://GdkPixbuf?version=2.0';
|
||||||
|
|
||||||
|
export namespace AstalTray {
|
||||||
|
/**
|
||||||
|
* AstalTray-0.1
|
||||||
|
*/
|
||||||
|
|
||||||
|
export namespace Category {
|
||||||
|
export const $gtype: GObject.GType<Category>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Category {
|
||||||
|
APPLICATION,
|
||||||
|
COMMUNICATIONS,
|
||||||
|
SYSTEM,
|
||||||
|
HARDWARE,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace Status {
|
||||||
|
export const $gtype: GObject.GType<Status>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Status {
|
||||||
|
PASSIVE,
|
||||||
|
ACTIVE,
|
||||||
|
NEEDS_ATTENTION,
|
||||||
|
}
|
||||||
|
const MAJOR_VERSION: number;
|
||||||
|
const MINOR_VERSION: number;
|
||||||
|
const MICRO_VERSION: number;
|
||||||
|
const VERSION: string;
|
||||||
|
function category_to_nick(): string;
|
||||||
|
function status_to_nick(): string;
|
||||||
|
/**
|
||||||
|
* Get the singleton instance of [class`AstalTray`.Tray]
|
||||||
|
*/
|
||||||
|
function get_default(): Tray;
|
||||||
|
namespace Tray {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface ItemAdded {
|
||||||
|
(item_id: string): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface ItemRemoved {
|
||||||
|
(item_id: string): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
items: TrayItem[];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Tray extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Tray>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* List of currently registered tray items
|
||||||
|
*/
|
||||||
|
get items(): TrayItem[];
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Tray.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](): Tray;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'item-added', callback: (_source: this, item_id: string) => void): number;
|
||||||
|
connect_after(signal: 'item-added', callback: (_source: this, item_id: string) => void): number;
|
||||||
|
emit(signal: 'item-added', item_id: string): void;
|
||||||
|
connect(signal: 'item-removed', callback: (_source: this, item_id: string) => void): number;
|
||||||
|
connect_after(signal: 'item-removed', callback: (_source: this, item_id: string) => void): number;
|
||||||
|
emit(signal: 'item-removed', item_id: string): void;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the singleton instance of [class`AstalTray`.Tray]
|
||||||
|
*/
|
||||||
|
static get_default(): Tray;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* gets the TrayItem with the given item-id.
|
||||||
|
* @param item_id
|
||||||
|
*/
|
||||||
|
get_item(item_id: string): TrayItem;
|
||||||
|
get_items(): TrayItem[];
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace TrayItem {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface Changed {
|
||||||
|
(): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface Ready {
|
||||||
|
(): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
title: string;
|
||||||
|
category: Category;
|
||||||
|
status: Status;
|
||||||
|
tooltip: Tooltip;
|
||||||
|
tooltip_markup: string;
|
||||||
|
tooltipMarkup: string;
|
||||||
|
id: string;
|
||||||
|
is_menu: boolean;
|
||||||
|
isMenu: boolean;
|
||||||
|
icon_theme_path: string;
|
||||||
|
iconThemePath: string;
|
||||||
|
icon_name: string;
|
||||||
|
iconName: string;
|
||||||
|
icon_pixbuf: GdkPixbuf.Pixbuf;
|
||||||
|
iconPixbuf: GdkPixbuf.Pixbuf;
|
||||||
|
gicon: Gio.Icon;
|
||||||
|
item_id: string;
|
||||||
|
itemId: string;
|
||||||
|
menu_model: Gio.MenuModel;
|
||||||
|
menuModel: Gio.MenuModel;
|
||||||
|
action_group: Gio.ActionGroup;
|
||||||
|
actionGroup: Gio.ActionGroup;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class TrayItem extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<TrayItem>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The Title of the TrayItem
|
||||||
|
*/
|
||||||
|
get title(): string;
|
||||||
|
/**
|
||||||
|
* The category this item belongs to
|
||||||
|
*/
|
||||||
|
get category(): Category;
|
||||||
|
/**
|
||||||
|
* The current status of this item
|
||||||
|
*/
|
||||||
|
get status(): Status;
|
||||||
|
/**
|
||||||
|
* The tooltip of this item
|
||||||
|
*/
|
||||||
|
get tooltip(): Tooltip;
|
||||||
|
/**
|
||||||
|
* A markup representation of the tooltip. This is basically equvivalent to `tooltip.title \n tooltip.description`
|
||||||
|
*/
|
||||||
|
get tooltip_markup(): string;
|
||||||
|
/**
|
||||||
|
* A markup representation of the tooltip. This is basically equvivalent to `tooltip.title \n tooltip.description`
|
||||||
|
*/
|
||||||
|
get tooltipMarkup(): string;
|
||||||
|
/**
|
||||||
|
* the id of the item. This id is specified by the tray app.
|
||||||
|
*/
|
||||||
|
get id(): string;
|
||||||
|
/**
|
||||||
|
* If set, this only supports the menu, so showing the menu should be prefered over calling [method`AstalTray`.TrayItem.activate].
|
||||||
|
*/
|
||||||
|
get is_menu(): boolean;
|
||||||
|
/**
|
||||||
|
* If set, this only supports the menu, so showing the menu should be prefered over calling [method`AstalTray`.TrayItem.activate].
|
||||||
|
*/
|
||||||
|
get isMenu(): boolean;
|
||||||
|
/**
|
||||||
|
* The icon theme path, where to look for the [property`AstalTray`.TrayItem:icon-name]. It is recommended to use the [property@
|
||||||
|
* AstalTray.TrayItem:gicon] property, which does the icon lookups for you.
|
||||||
|
*/
|
||||||
|
get icon_theme_path(): string;
|
||||||
|
/**
|
||||||
|
* The icon theme path, where to look for the [property`AstalTray`.TrayItem:icon-name]. It is recommended to use the [property@
|
||||||
|
* AstalTray.TrayItem:gicon] property, which does the icon lookups for you.
|
||||||
|
*/
|
||||||
|
get iconThemePath(): string;
|
||||||
|
/**
|
||||||
|
* The name of the icon. This should be looked up in the [property`AstalTray`.TrayItem:icon-theme-path] if set or in the currently used icon
|
||||||
|
* theme otherwise. It is recommended to use the [property`AstalTray`.TrayItem:gicon] property, which does the icon lookups for you.
|
||||||
|
*/
|
||||||
|
get icon_name(): string;
|
||||||
|
/**
|
||||||
|
* The name of the icon. This should be looked up in the [property`AstalTray`.TrayItem:icon-theme-path] if set or in the currently used icon
|
||||||
|
* theme otherwise. It is recommended to use the [property`AstalTray`.TrayItem:gicon] property, which does the icon lookups for you.
|
||||||
|
*/
|
||||||
|
get iconName(): string;
|
||||||
|
/**
|
||||||
|
* A pixbuf containing the icon. It is recommended to use the [property`AstalTray`.TrayItem:gicon] property, which does the icon lookups for
|
||||||
|
* you.
|
||||||
|
*/
|
||||||
|
get icon_pixbuf(): GdkPixbuf.Pixbuf;
|
||||||
|
/**
|
||||||
|
* A pixbuf containing the icon. It is recommended to use the [property`AstalTray`.TrayItem:gicon] property, which does the icon lookups for
|
||||||
|
* you.
|
||||||
|
*/
|
||||||
|
get iconPixbuf(): GdkPixbuf.Pixbuf;
|
||||||
|
/**
|
||||||
|
* Contains the items icon. This property is intended to be used with the gicon property of the Icon widget and the recommended way to display the
|
||||||
|
* icon. This property unifies the [property`AstalTray`.TrayItem:icon-name], [property`AstalTray`.TrayItem:icon-theme-path] and [property
|
||||||
|
* `AstalTray`.TrayItem:icon-pixbuf] properties.
|
||||||
|
*/
|
||||||
|
get gicon(): Gio.Icon;
|
||||||
|
set gicon(val: Gio.Icon);
|
||||||
|
/**
|
||||||
|
* The id of the item used to uniquely identify the TrayItems by this lib.
|
||||||
|
*/
|
||||||
|
get item_id(): string;
|
||||||
|
set item_id(val: string);
|
||||||
|
/**
|
||||||
|
* The id of the item used to uniquely identify the TrayItems by this lib.
|
||||||
|
*/
|
||||||
|
get itemId(): string;
|
||||||
|
set itemId(val: string);
|
||||||
|
/**
|
||||||
|
* The MenuModel describing the menu for this TrayItem to be used with a MenuButton or PopoverMenu. The actions for this menu are defined in
|
||||||
|
* [property`AstalTray`.TrayItem:action-group].
|
||||||
|
*/
|
||||||
|
get menu_model(): Gio.MenuModel;
|
||||||
|
/**
|
||||||
|
* The MenuModel describing the menu for this TrayItem to be used with a MenuButton or PopoverMenu. The actions for this menu are defined in
|
||||||
|
* [property`AstalTray`.TrayItem:action-group].
|
||||||
|
*/
|
||||||
|
get menuModel(): Gio.MenuModel;
|
||||||
|
/**
|
||||||
|
* The ActionGroup containing the actions for the menu. All actions have the `dbusmenu` prefix and are setup to work with the [property@
|
||||||
|
* AstalTray.TrayItem:menu-model]. Make sure to insert this action group into a parent widget of the menu, eg the MenuButton for which the MenuModel for
|
||||||
|
* this TrayItem is set.
|
||||||
|
*/
|
||||||
|
get action_group(): Gio.ActionGroup;
|
||||||
|
/**
|
||||||
|
* The ActionGroup containing the actions for the menu. All actions have the `dbusmenu` prefix and are setup to work with the [property@
|
||||||
|
* AstalTray.TrayItem:menu-model]. Make sure to insert this action group into a parent widget of the menu, eg the MenuButton for which the MenuModel for
|
||||||
|
* this TrayItem is set.
|
||||||
|
*/
|
||||||
|
get actionGroup(): Gio.ActionGroup;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<TrayItem.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'changed', callback: (_source: this) => void): number;
|
||||||
|
connect_after(signal: 'changed', callback: (_source: this) => void): number;
|
||||||
|
emit(signal: 'changed'): void;
|
||||||
|
connect(signal: 'ready', callback: (_source: this) => void): number;
|
||||||
|
connect_after(signal: 'ready', callback: (_source: this) => void): number;
|
||||||
|
emit(signal: 'ready'): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* tells the tray app that its menu is about to be opened, so it can update the menu if needed. You should call this method before openening the
|
||||||
|
* menu.
|
||||||
|
*/
|
||||||
|
about_to_show(): void;
|
||||||
|
/**
|
||||||
|
* Send an activate request to the tray app.
|
||||||
|
* @param x
|
||||||
|
* @param y
|
||||||
|
*/
|
||||||
|
activate(x: number, y: number): void;
|
||||||
|
/**
|
||||||
|
* Send a secondary activate request to the tray app.
|
||||||
|
* @param x
|
||||||
|
* @param y
|
||||||
|
*/
|
||||||
|
secondary_activate(x: number, y: number): void;
|
||||||
|
/**
|
||||||
|
* Send a scroll request to the tray app. valid values for the orientation are "horizontal" and "vertical".
|
||||||
|
* @param delta
|
||||||
|
* @param orientation
|
||||||
|
*/
|
||||||
|
scroll(delta: number, orientation: string): void;
|
||||||
|
to_json_string(): string;
|
||||||
|
get_title(): string;
|
||||||
|
get_category(): Category;
|
||||||
|
get_status(): Status;
|
||||||
|
get_tooltip(): Tooltip | null;
|
||||||
|
get_tooltip_markup(): string;
|
||||||
|
get_id(): string;
|
||||||
|
get_is_menu(): boolean;
|
||||||
|
get_icon_theme_path(): string;
|
||||||
|
get_icon_name(): string;
|
||||||
|
get_icon_pixbuf(): GdkPixbuf.Pixbuf;
|
||||||
|
get_gicon(): Gio.Icon;
|
||||||
|
get_item_id(): string;
|
||||||
|
get_menu_model(): Gio.MenuModel | null;
|
||||||
|
get_action_group(): Gio.ActionGroup | null;
|
||||||
|
}
|
||||||
|
|
||||||
|
type TrayClass = typeof Tray;
|
||||||
|
abstract class TrayPrivate {
|
||||||
|
static $gtype: GObject.GType<TrayPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type TrayItemClass = typeof TrayItem;
|
||||||
|
abstract class TrayItemPrivate {
|
||||||
|
static $gtype: GObject.GType<TrayItemPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Pixmap {
|
||||||
|
static $gtype: GObject.GType<Pixmap>;
|
||||||
|
|
||||||
|
// Fields
|
||||||
|
|
||||||
|
width: number;
|
||||||
|
height: number;
|
||||||
|
bytes: Uint8Array;
|
||||||
|
bytes_length1: number;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
properties?: Partial<{
|
||||||
|
width: number;
|
||||||
|
height: number;
|
||||||
|
bytes: Uint8Array;
|
||||||
|
bytes_length1: number;
|
||||||
|
}>,
|
||||||
|
);
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Tooltip {
|
||||||
|
static $gtype: GObject.GType<Tooltip>;
|
||||||
|
|
||||||
|
// Fields
|
||||||
|
|
||||||
|
icon_name: string;
|
||||||
|
icon: Pixmap[];
|
||||||
|
icon_length1: number;
|
||||||
|
title: string;
|
||||||
|
description: string;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
properties?: Partial<{
|
||||||
|
icon_name: string;
|
||||||
|
icon: Pixmap[];
|
||||||
|
icon_length1: number;
|
||||||
|
title: string;
|
||||||
|
description: string;
|
||||||
|
}>,
|
||||||
|
);
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 AstalTray;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://AstalTray' {
|
||||||
|
import AstalTray01 from 'gi://AstalTray?version=0.1';
|
||||||
|
export default AstalTray01;
|
||||||
|
}
|
||||||
|
// END
|
937
@girs/astalwp-0.1.d.ts
vendored
Normal file
937
@girs/astalwp-0.1.d.ts
vendored
Normal file
|
@ -0,0 +1,937 @@
|
||||||
|
/// <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://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 DeviceType {
|
||||||
|
export const $gtype: GObject.GType<DeviceType>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum DeviceType {
|
||||||
|
AUDIO,
|
||||||
|
VIDEO,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace MediaClass {
|
||||||
|
export const $gtype: GObject.GType<MediaClass>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum MediaClass {
|
||||||
|
AUDIO_MICROPHONE,
|
||||||
|
AUDIO_SPEAKER,
|
||||||
|
AUDIO_RECORDER,
|
||||||
|
AUDIO_STREAM,
|
||||||
|
VIDEO_SOURCE,
|
||||||
|
VIDEO_SINK,
|
||||||
|
VIDEO_RECORDER,
|
||||||
|
VIDEO_STREAM,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace Scale {
|
||||||
|
export const $gtype: GObject.GType<Scale>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Scale {
|
||||||
|
LINEAR,
|
||||||
|
CUBIC,
|
||||||
|
}
|
||||||
|
const MAJOR_VERSION: number;
|
||||||
|
const MICRO_VERSION: number;
|
||||||
|
const MINOR_VERSION: number;
|
||||||
|
const VERSION: string;
|
||||||
|
/**
|
||||||
|
* gets the default wireplumber object.
|
||||||
|
* @returns gets the default wireplumber object.
|
||||||
|
*/
|
||||||
|
function get_default(): Wp | null;
|
||||||
|
namespace Audio {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface DeviceAdded {
|
||||||
|
(object: Device): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface DeviceRemoved {
|
||||||
|
(object: Device): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface MicrophoneAdded {
|
||||||
|
(object: Endpoint): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface MicrophoneRemoved {
|
||||||
|
(object: Endpoint): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface RecorderAdded {
|
||||||
|
(object: Endpoint): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface RecorderRemoved {
|
||||||
|
(object: Endpoint): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface SpeakerAdded {
|
||||||
|
(object: Endpoint): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface SpeakerRemoved {
|
||||||
|
(object: Endpoint): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface StreamAdded {
|
||||||
|
(object: Endpoint): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface StreamRemoved {
|
||||||
|
(object: Endpoint): 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: Endpoint[];
|
||||||
|
speakers: Endpoint[];
|
||||||
|
streams: Endpoint[];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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<Audio>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The AstalWndpoint object representing the default speaker
|
||||||
|
*/
|
||||||
|
get default_microphone(): Endpoint;
|
||||||
|
/**
|
||||||
|
* The AstalWndpoint object representing the default speaker
|
||||||
|
*/
|
||||||
|
get defaultMicrophone(): Endpoint;
|
||||||
|
/**
|
||||||
|
* The AstalWndpoint object representing the default speaker
|
||||||
|
*/
|
||||||
|
get default_speaker(): Endpoint;
|
||||||
|
/**
|
||||||
|
* The AstalWndpoint object representing the default speaker
|
||||||
|
*/
|
||||||
|
get defaultSpeaker(): Endpoint;
|
||||||
|
/**
|
||||||
|
* A list of AstalWpEndpoint objects
|
||||||
|
*/
|
||||||
|
get devices(): Device[];
|
||||||
|
/**
|
||||||
|
* A list of AstalWpEndpoint objects
|
||||||
|
*/
|
||||||
|
get microphones(): Endpoint[];
|
||||||
|
/**
|
||||||
|
* A list of AstalWpEndpoint objects
|
||||||
|
*/
|
||||||
|
get recorders(): Endpoint[];
|
||||||
|
/**
|
||||||
|
* A list of AstalWpEndpoint objects
|
||||||
|
*/
|
||||||
|
get speakers(): Endpoint[];
|
||||||
|
/**
|
||||||
|
* A list of AstalWpEndpoint objects
|
||||||
|
*/
|
||||||
|
get streams(): Endpoint[];
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Audio.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](wp: Wp): Audio;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'device-added', callback: (_source: this, object: Device) => void): number;
|
||||||
|
connect_after(signal: 'device-added', callback: (_source: this, object: Device) => void): number;
|
||||||
|
emit(signal: 'device-added', object: Device): void;
|
||||||
|
connect(signal: 'device-removed', callback: (_source: this, object: Device) => void): number;
|
||||||
|
connect_after(signal: 'device-removed', callback: (_source: this, object: Device) => void): number;
|
||||||
|
emit(signal: 'device-removed', object: Device): void;
|
||||||
|
connect(signal: 'microphone-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'microphone-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'microphone-added', object: Endpoint): void;
|
||||||
|
connect(signal: 'microphone-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'microphone-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'microphone-removed', object: Endpoint): void;
|
||||||
|
connect(signal: 'recorder-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'recorder-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'recorder-added', object: Endpoint): void;
|
||||||
|
connect(signal: 'recorder-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'recorder-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'recorder-removed', object: Endpoint): void;
|
||||||
|
connect(signal: 'speaker-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'speaker-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'speaker-added', object: Endpoint): void;
|
||||||
|
connect(signal: 'speaker-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'speaker-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'speaker-removed', object: Endpoint): void;
|
||||||
|
connect(signal: 'stream-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'stream-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'stream-added', object: Endpoint): void;
|
||||||
|
connect(signal: 'stream-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'stream-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'stream-removed', object: Endpoint): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* gets the default microphone object
|
||||||
|
*/
|
||||||
|
get_default_microphone(): Endpoint | null;
|
||||||
|
/**
|
||||||
|
* gets the default speaker object
|
||||||
|
*/
|
||||||
|
get_default_speaker(): Endpoint | null;
|
||||||
|
/**
|
||||||
|
* gets the device with the given id
|
||||||
|
* @param id the id of the device
|
||||||
|
*/
|
||||||
|
get_device(id: number): Device | null;
|
||||||
|
/**
|
||||||
|
* a GList containing the devices
|
||||||
|
*/
|
||||||
|
get_devices(): Device[] | null;
|
||||||
|
/**
|
||||||
|
* the endpoint with the given id
|
||||||
|
* @param id the id of the endpoint
|
||||||
|
*/
|
||||||
|
get_endpoint(id: number): Endpoint | null;
|
||||||
|
/**
|
||||||
|
* gets the microphone with the given id
|
||||||
|
* @param id the id of the endpoint
|
||||||
|
*/
|
||||||
|
get_microphone(id: number): Endpoint | null;
|
||||||
|
/**
|
||||||
|
* a GList containing the microphones
|
||||||
|
*/
|
||||||
|
get_microphones(): Endpoint[] | null;
|
||||||
|
/**
|
||||||
|
* gets the recorder with the given id
|
||||||
|
* @param id the id of the endpoint
|
||||||
|
*/
|
||||||
|
get_recorder(id: number): Endpoint | null;
|
||||||
|
/**
|
||||||
|
* a GList containing the recorders
|
||||||
|
*/
|
||||||
|
get_recorders(): Endpoint[] | null;
|
||||||
|
/**
|
||||||
|
* gets the speaker with the given id
|
||||||
|
* @param id the id of the endpoint
|
||||||
|
*/
|
||||||
|
get_speaker(id: number): Endpoint | null;
|
||||||
|
/**
|
||||||
|
* a GList containing the speakers
|
||||||
|
*/
|
||||||
|
get_speakers(): Endpoint[] | null;
|
||||||
|
/**
|
||||||
|
* gets the stream with the given id
|
||||||
|
* @param id the id of the endpoint
|
||||||
|
*/
|
||||||
|
get_stream(id: number): Endpoint | null;
|
||||||
|
/**
|
||||||
|
* a GList containing the streams
|
||||||
|
*/
|
||||||
|
get_streams(): Endpoint[] | null;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Device {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
active_profile_id: number;
|
||||||
|
activeProfileId: number;
|
||||||
|
description: string;
|
||||||
|
device_type: DeviceType;
|
||||||
|
deviceType: DeviceType;
|
||||||
|
icon: string;
|
||||||
|
id: number;
|
||||||
|
profiles: Profile[];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Device extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Device>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The id of the currently active profile.
|
||||||
|
*/
|
||||||
|
get active_profile_id(): number;
|
||||||
|
set active_profile_id(val: number);
|
||||||
|
/**
|
||||||
|
* The id of the currently active profile.
|
||||||
|
*/
|
||||||
|
get activeProfileId(): number;
|
||||||
|
set activeProfileId(val: number);
|
||||||
|
/**
|
||||||
|
* The description of this device.
|
||||||
|
*/
|
||||||
|
get description(): string;
|
||||||
|
/**
|
||||||
|
* The type of this device
|
||||||
|
*/
|
||||||
|
get device_type(): DeviceType;
|
||||||
|
/**
|
||||||
|
* The type of this device
|
||||||
|
*/
|
||||||
|
get deviceType(): DeviceType;
|
||||||
|
/**
|
||||||
|
* The icon name for this device.
|
||||||
|
*/
|
||||||
|
get icon(): string;
|
||||||
|
/**
|
||||||
|
* The id of this device.
|
||||||
|
*/
|
||||||
|
get id(): number;
|
||||||
|
/**
|
||||||
|
* A list of available profiles
|
||||||
|
*/
|
||||||
|
get profiles(): Profile[];
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Device.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* gets the currently active profile of this device
|
||||||
|
*/
|
||||||
|
get_active_profile(): number;
|
||||||
|
/**
|
||||||
|
* gets the description of this device
|
||||||
|
*/
|
||||||
|
get_description(): string;
|
||||||
|
/**
|
||||||
|
* gets the type of this device
|
||||||
|
*/
|
||||||
|
get_device_type(): DeviceType;
|
||||||
|
/**
|
||||||
|
* gets the icon of this device
|
||||||
|
*/
|
||||||
|
get_icon(): string;
|
||||||
|
/**
|
||||||
|
* gets the id of this device
|
||||||
|
*/
|
||||||
|
get_id(): number;
|
||||||
|
/**
|
||||||
|
* gets the profile with the given id
|
||||||
|
* @param id the id of the profile
|
||||||
|
*/
|
||||||
|
get_profile(id: number): Profile | null;
|
||||||
|
/**
|
||||||
|
* gets a GList containing the profiles
|
||||||
|
*/
|
||||||
|
get_profiles(): Profile[] | null;
|
||||||
|
/**
|
||||||
|
* sets the profile for this device
|
||||||
|
* @param profile_id the id of the profile
|
||||||
|
*/
|
||||||
|
set_active_profile(profile_id: number): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Endpoint {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
description: string;
|
||||||
|
icon: string;
|
||||||
|
id: number;
|
||||||
|
is_default: boolean;
|
||||||
|
isDefault: boolean;
|
||||||
|
lock_channels: boolean;
|
||||||
|
lockChannels: boolean;
|
||||||
|
media_class: MediaClass;
|
||||||
|
mediaClass: MediaClass;
|
||||||
|
mute: boolean;
|
||||||
|
name: string;
|
||||||
|
path: string;
|
||||||
|
serial: number;
|
||||||
|
volume: number;
|
||||||
|
volume_icon: string;
|
||||||
|
volumeIcon: string;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Endpoint extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Endpoint>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The description of this endpoint
|
||||||
|
*/
|
||||||
|
get description(): string;
|
||||||
|
/**
|
||||||
|
* The icon of this endpoint. Note that endpoints do not have icons associated with them in
|
||||||
|
* pipewire, so the icon of the associated device is used instead.
|
||||||
|
*/
|
||||||
|
get icon(): string;
|
||||||
|
/**
|
||||||
|
* The pipewire id of this endpoint.
|
||||||
|
*/
|
||||||
|
get id(): number;
|
||||||
|
/**
|
||||||
|
* Whether this endpoint is the default one used for this media-class. Note that setting this
|
||||||
|
* property to false has no effect.
|
||||||
|
*/
|
||||||
|
get is_default(): boolean;
|
||||||
|
set is_default(val: boolean);
|
||||||
|
/**
|
||||||
|
* Whether this endpoint is the default one used for this media-class. Note that setting this
|
||||||
|
* property to false has no effect.
|
||||||
|
*/
|
||||||
|
get isDefault(): boolean;
|
||||||
|
set isDefault(val: boolean);
|
||||||
|
/**
|
||||||
|
* Whether to lock the channels together or not.
|
||||||
|
*/
|
||||||
|
get lock_channels(): boolean;
|
||||||
|
set lock_channels(val: boolean);
|
||||||
|
/**
|
||||||
|
* Whether to lock the channels together or not.
|
||||||
|
*/
|
||||||
|
get lockChannels(): boolean;
|
||||||
|
set lockChannels(val: boolean);
|
||||||
|
/**
|
||||||
|
* The media class of this endpoint
|
||||||
|
*/
|
||||||
|
get media_class(): MediaClass;
|
||||||
|
/**
|
||||||
|
* The media class of this endpoint
|
||||||
|
*/
|
||||||
|
get mediaClass(): MediaClass;
|
||||||
|
/**
|
||||||
|
* The mute state of this endpoint
|
||||||
|
*/
|
||||||
|
get mute(): boolean;
|
||||||
|
set mute(val: boolean);
|
||||||
|
/**
|
||||||
|
* The name of this endpoint
|
||||||
|
*/
|
||||||
|
get name(): string;
|
||||||
|
/**
|
||||||
|
* The object path of this endpoint
|
||||||
|
*/
|
||||||
|
get path(): string;
|
||||||
|
/**
|
||||||
|
* The object serial of this endpoint.
|
||||||
|
*/
|
||||||
|
get serial(): number;
|
||||||
|
/**
|
||||||
|
* The volume of this endpoint
|
||||||
|
*/
|
||||||
|
get volume(): number;
|
||||||
|
set volume(val: number);
|
||||||
|
/**
|
||||||
|
* The volume icon of this endpoint
|
||||||
|
*/
|
||||||
|
get volume_icon(): string;
|
||||||
|
/**
|
||||||
|
* The volume icon of this endpoint
|
||||||
|
*/
|
||||||
|
get volumeIcon(): string;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Endpoint.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* gets the description of this endpoint
|
||||||
|
*/
|
||||||
|
get_description(): string;
|
||||||
|
/**
|
||||||
|
* gets the icon for this endpoint
|
||||||
|
*/
|
||||||
|
get_icon(): string;
|
||||||
|
/**
|
||||||
|
* gets the id of the endpoint.
|
||||||
|
*/
|
||||||
|
get_id(): number;
|
||||||
|
get_is_default(): boolean;
|
||||||
|
get_lock_channels(): boolean;
|
||||||
|
/**
|
||||||
|
* gets the media class of the endpoint.
|
||||||
|
*/
|
||||||
|
get_media_class(): MediaClass;
|
||||||
|
/**
|
||||||
|
* gets the mute status of the endpoint.
|
||||||
|
*/
|
||||||
|
get_mute(): boolean;
|
||||||
|
/**
|
||||||
|
* gets the name of this endpoint
|
||||||
|
*/
|
||||||
|
get_name(): string;
|
||||||
|
/**
|
||||||
|
* gets the object path of this endpoint
|
||||||
|
*/
|
||||||
|
get_path(): string;
|
||||||
|
/**
|
||||||
|
* gets the serial number of this endpoint
|
||||||
|
*/
|
||||||
|
get_serial(): number;
|
||||||
|
/**
|
||||||
|
* gets the volume
|
||||||
|
*/
|
||||||
|
get_volume(): number;
|
||||||
|
get_volume_icon(): string;
|
||||||
|
set_is_default(is_default: boolean): void;
|
||||||
|
set_lock_channels(lock_channels: boolean): void;
|
||||||
|
/**
|
||||||
|
* Sets the mute status for the endpoint.
|
||||||
|
* @param mute A boolean indicating whether to mute the endpoint.
|
||||||
|
*/
|
||||||
|
set_mute(mute: boolean): void;
|
||||||
|
/**
|
||||||
|
* Sets the volume level for this endpoint. The volume is clamped to be between
|
||||||
|
* 0 and 1.5.
|
||||||
|
* @param volume The new volume level to set.
|
||||||
|
*/
|
||||||
|
set_volume(volume: number): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Profile {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
description: string;
|
||||||
|
index: number;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Profile extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Profile>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
get description(): string;
|
||||||
|
get index(): number;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Profile.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
get_description(): string;
|
||||||
|
get_index(): number;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Video {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface DeviceAdded {
|
||||||
|
(object: Device): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface DeviceRemoved {
|
||||||
|
(object: Device): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface RecorderAdded {
|
||||||
|
(object: Endpoint): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface RecorderRemoved {
|
||||||
|
(object: Endpoint): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface SinkAdded {
|
||||||
|
(object: Endpoint): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface SinkRemoved {
|
||||||
|
(object: Endpoint): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface SourceAdded {
|
||||||
|
(object: Endpoint): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface SourceRemoved {
|
||||||
|
(object: Endpoint): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface StreamAdded {
|
||||||
|
(object: Endpoint): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface StreamRemoved {
|
||||||
|
(object: Endpoint): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
devices: Endpoint[];
|
||||||
|
recorders: any;
|
||||||
|
sinks: Endpoint[];
|
||||||
|
sources: Endpoint[];
|
||||||
|
streams: Endpoint[];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 video
|
||||||
|
* endpoints and devices.
|
||||||
|
*/
|
||||||
|
class Video extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Video>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A list of AstalWpEndpoint objects
|
||||||
|
*/
|
||||||
|
get devices(): Endpoint[];
|
||||||
|
get recorders(): any;
|
||||||
|
/**
|
||||||
|
* A list of AstalWpEndpoint objects
|
||||||
|
*/
|
||||||
|
get sinks(): Endpoint[];
|
||||||
|
/**
|
||||||
|
* A list of AstalWpEndpoint objects
|
||||||
|
*/
|
||||||
|
get sources(): Endpoint[];
|
||||||
|
/**
|
||||||
|
* A list of AstalWpEndpoint objects
|
||||||
|
*/
|
||||||
|
get streams(): Endpoint[];
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Video.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](wp: Wp): Video;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'device-added', callback: (_source: this, object: Device) => void): number;
|
||||||
|
connect_after(signal: 'device-added', callback: (_source: this, object: Device) => void): number;
|
||||||
|
emit(signal: 'device-added', object: Device): void;
|
||||||
|
connect(signal: 'device-removed', callback: (_source: this, object: Device) => void): number;
|
||||||
|
connect_after(signal: 'device-removed', callback: (_source: this, object: Device) => void): number;
|
||||||
|
emit(signal: 'device-removed', object: Device): void;
|
||||||
|
connect(signal: 'recorder-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'recorder-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'recorder-added', object: Endpoint): void;
|
||||||
|
connect(signal: 'recorder-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'recorder-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'recorder-removed', object: Endpoint): void;
|
||||||
|
connect(signal: 'sink-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'sink-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'sink-added', object: Endpoint): void;
|
||||||
|
connect(signal: 'sink-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'sink-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'sink-removed', object: Endpoint): void;
|
||||||
|
connect(signal: 'source-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'source-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'source-added', object: Endpoint): void;
|
||||||
|
connect(signal: 'source-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'source-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'source-removed', object: Endpoint): void;
|
||||||
|
connect(signal: 'stream-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'stream-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'stream-added', object: Endpoint): void;
|
||||||
|
connect(signal: 'stream-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'stream-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'stream-removed', object: Endpoint): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* the device with the given id
|
||||||
|
* @param id the id of the device
|
||||||
|
* @returns the device with the given id
|
||||||
|
*/
|
||||||
|
get_device(id: number): Device | null;
|
||||||
|
/**
|
||||||
|
* a list containing the devices
|
||||||
|
* @returns a GList containing the devices
|
||||||
|
*/
|
||||||
|
get_devices(): Device[] | null;
|
||||||
|
/**
|
||||||
|
* the recorder with the given id
|
||||||
|
* @param id the id of the endpoint
|
||||||
|
* @returns the recorder with the given id
|
||||||
|
*/
|
||||||
|
get_recorder(id: number): Endpoint | null;
|
||||||
|
/**
|
||||||
|
* a list containing the video recorders
|
||||||
|
* @returns a GList containing the video recorders
|
||||||
|
*/
|
||||||
|
get_recorders(): Endpoint[] | null;
|
||||||
|
/**
|
||||||
|
* the sink with the given id
|
||||||
|
* @param id the id of the endpoint
|
||||||
|
* @returns the sink with the given id
|
||||||
|
*/
|
||||||
|
get_sink(id: number): Endpoint | null;
|
||||||
|
/**
|
||||||
|
* a list containing the video sinks
|
||||||
|
* @returns a GList containing the video sinks
|
||||||
|
*/
|
||||||
|
get_sinks(): Endpoint[] | null;
|
||||||
|
/**
|
||||||
|
* the source with the given id
|
||||||
|
* @param id the id of the endpoint
|
||||||
|
* @returns the source with the given id
|
||||||
|
*/
|
||||||
|
get_source(id: number): Endpoint | null;
|
||||||
|
/**
|
||||||
|
* a list containing the video sources
|
||||||
|
* @returns a GList containing the video sources
|
||||||
|
*/
|
||||||
|
get_sources(): Endpoint[] | null;
|
||||||
|
/**
|
||||||
|
* the stream with the given id
|
||||||
|
* @param id the id of the endpoint
|
||||||
|
* @returns the stream with the given id
|
||||||
|
*/
|
||||||
|
get_stream(id: number): Endpoint | null;
|
||||||
|
/**
|
||||||
|
* a list containing the video streams
|
||||||
|
* @returns a GList containing the video streams
|
||||||
|
*/
|
||||||
|
get_streams(): Endpoint[] | null;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Wp {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface DeviceAdded {
|
||||||
|
(object: Device): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface DeviceRemoved {
|
||||||
|
(object: Device): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface EndpointAdded {
|
||||||
|
(object: Endpoint): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface EndpointRemoved {
|
||||||
|
(object: Endpoint): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
audio: Audio;
|
||||||
|
default_microphone: Endpoint;
|
||||||
|
defaultMicrophone: Endpoint;
|
||||||
|
default_speaker: Endpoint;
|
||||||
|
defaultSpeaker: Endpoint;
|
||||||
|
devices: Device[];
|
||||||
|
endpoints: Endpoint[];
|
||||||
|
scale: Scale;
|
||||||
|
video: Video;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* manages the connection to wireplumber. Usually you don't want to use this class directly, but use
|
||||||
|
* the [class`AstalWp`.Audio] or [class`AstalWp`.Video] instead.
|
||||||
|
*/
|
||||||
|
class Wp extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Wp>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
get audio(): Audio;
|
||||||
|
/**
|
||||||
|
* The [class`AstalWp`.Endpoint] representing the default speaker
|
||||||
|
*/
|
||||||
|
get default_microphone(): Endpoint;
|
||||||
|
/**
|
||||||
|
* The [class`AstalWp`.Endpoint] representing the default speaker
|
||||||
|
*/
|
||||||
|
get defaultMicrophone(): Endpoint;
|
||||||
|
/**
|
||||||
|
* The [class`AstalWp`.Endpoint] representing the default speaker
|
||||||
|
*/
|
||||||
|
get default_speaker(): Endpoint;
|
||||||
|
/**
|
||||||
|
* The [class`AstalWp`.Endpoint] representing the default speaker
|
||||||
|
*/
|
||||||
|
get defaultSpeaker(): Endpoint;
|
||||||
|
/**
|
||||||
|
* A list of [class`AstalWp`.Device] objects
|
||||||
|
*/
|
||||||
|
get devices(): Device[];
|
||||||
|
/**
|
||||||
|
* A list of [class`AstalWp`.Endpoint] objects
|
||||||
|
*/
|
||||||
|
get endpoints(): Endpoint[];
|
||||||
|
/**
|
||||||
|
* The scale used for the volume
|
||||||
|
*/
|
||||||
|
get scale(): Scale;
|
||||||
|
set scale(val: Scale);
|
||||||
|
get video(): Video;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Wp.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'device-added', callback: (_source: this, object: Device) => void): number;
|
||||||
|
connect_after(signal: 'device-added', callback: (_source: this, object: Device) => void): number;
|
||||||
|
emit(signal: 'device-added', object: Device): void;
|
||||||
|
connect(signal: 'device-removed', callback: (_source: this, object: Device) => void): number;
|
||||||
|
connect_after(signal: 'device-removed', callback: (_source: this, object: Device) => void): number;
|
||||||
|
emit(signal: 'device-removed', object: Device): void;
|
||||||
|
connect(signal: 'endpoint-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'endpoint-added', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'endpoint-added', object: Endpoint): void;
|
||||||
|
connect(signal: 'endpoint-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
connect_after(signal: 'endpoint-removed', callback: (_source: this, object: Endpoint) => void): number;
|
||||||
|
emit(signal: 'endpoint-removed', object: Endpoint): void;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* gets the default wireplumber object.
|
||||||
|
*/
|
||||||
|
static get_default(): Wp | null;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* gets the [class`AstalWp`.Audio] object
|
||||||
|
* @returns gets the audio object
|
||||||
|
*/
|
||||||
|
get_audio(): Audio | null;
|
||||||
|
/**
|
||||||
|
* gets the default microphone object
|
||||||
|
* @returns gets the default microphone object
|
||||||
|
*/
|
||||||
|
get_default_microphone(): Endpoint | null;
|
||||||
|
/**
|
||||||
|
* gets the default speaker object
|
||||||
|
* @returns gets the default speaker object
|
||||||
|
*/
|
||||||
|
get_default_speaker(): Endpoint | null;
|
||||||
|
/**
|
||||||
|
* the device with the given id
|
||||||
|
* @param id the id of the device
|
||||||
|
* @returns the device with the given id
|
||||||
|
*/
|
||||||
|
get_device(id: number): Device | null;
|
||||||
|
/**
|
||||||
|
* the GList containing the devices
|
||||||
|
* @returns a GList containing the devices
|
||||||
|
*/
|
||||||
|
get_devices(): Device[] | null;
|
||||||
|
/**
|
||||||
|
* the endpoint with the given id
|
||||||
|
* @param id the id of the endpoint
|
||||||
|
* @returns the endpoint with the given id
|
||||||
|
*/
|
||||||
|
get_endpoint(id: number): Endpoint | null;
|
||||||
|
/**
|
||||||
|
* a GList containing all endpoints
|
||||||
|
* @returns a GList containing the endpoints
|
||||||
|
*/
|
||||||
|
get_endpoints(): Endpoint[] | null;
|
||||||
|
get_scale(): Scale;
|
||||||
|
/**
|
||||||
|
* gets the video object
|
||||||
|
* @returns gets the video object
|
||||||
|
*/
|
||||||
|
get_video(): Video | null;
|
||||||
|
set_scale(scale: Scale | null): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type AudioClass = typeof Audio;
|
||||||
|
type DeviceClass = typeof Device;
|
||||||
|
type EndpointClass = typeof Endpoint;
|
||||||
|
type ProfileClass = typeof Profile;
|
||||||
|
type VideoClass = typeof Video;
|
||||||
|
type WpClass = typeof Wp;
|
||||||
|
/**
|
||||||
|
* 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 AstalWp;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://AstalWp' {
|
||||||
|
import AstalWp01 from 'gi://AstalWp?version=0.1';
|
||||||
|
export default AstalWp01;
|
||||||
|
}
|
||||||
|
// END
|
10365
@girs/atk-1.0.d.ts
vendored
Normal file
10365
@girs/atk-1.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
6420
@girs/atspi-2.0.d.ts
vendored
Normal file
6420
@girs/atspi-2.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
536
@girs/cairo-1.0.d.ts
vendored
Normal file
536
@girs/cairo-1.0.d.ts
vendored
Normal file
|
@ -0,0 +1,536 @@
|
||||||
|
/// <reference path="./gobject-2.0.d.ts" />
|
||||||
|
/// <reference path="./glib-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://cairo?version=1.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
|
||||||
|
export namespace cairo {
|
||||||
|
/**
|
||||||
|
* cairo-1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
export namespace Status {
|
||||||
|
export const $gtype: GObject.GType<Status>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Status {
|
||||||
|
SUCCESS,
|
||||||
|
NO_MEMORY,
|
||||||
|
INVALID_RESTORE,
|
||||||
|
INVALID_POP_GROUP,
|
||||||
|
NO_CURRENT_POINT,
|
||||||
|
INVALID_MATRIX,
|
||||||
|
INVALID_STATUS,
|
||||||
|
NULL_POINTER,
|
||||||
|
INVALID_STRING,
|
||||||
|
INVALID_PATH_DATA,
|
||||||
|
READ_ERROR,
|
||||||
|
WRITE_ERROR,
|
||||||
|
SURFACE_FINISHED,
|
||||||
|
SURFACE_TYPE_MISMATCH,
|
||||||
|
PATTERN_TYPE_MISMATCH,
|
||||||
|
INVALID_CONTENT,
|
||||||
|
INVALID_FORMAT,
|
||||||
|
INVALID_VISUAL,
|
||||||
|
FILE_NOT_FOUND,
|
||||||
|
INVALID_DASH,
|
||||||
|
INVALID_DSC_COMMENT,
|
||||||
|
INVALID_INDEX,
|
||||||
|
CLIP_NOT_REPRESENTABLE,
|
||||||
|
TEMP_FILE_ERROR,
|
||||||
|
INVALID_STRIDE,
|
||||||
|
FONT_TYPE_MISMATCH,
|
||||||
|
USER_FONT_IMMUTABLE,
|
||||||
|
USER_FONT_ERROR,
|
||||||
|
NEGATIVE_COUNT,
|
||||||
|
INVALID_CLUSTERS,
|
||||||
|
INVALID_SLANT,
|
||||||
|
INVALID_WEIGHT,
|
||||||
|
INVALID_SIZE,
|
||||||
|
USER_FONT_NOT_IMPLEMENTED,
|
||||||
|
DEVICE_TYPE_MISMATCH,
|
||||||
|
DEVICE_ERROR,
|
||||||
|
INVALID_MESH_CONSTRUCTION,
|
||||||
|
DEVICE_FINISHED,
|
||||||
|
JBIG2_GLOBAL_MISSING,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace Content {
|
||||||
|
export const $gtype: GObject.GType<Content>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Content {
|
||||||
|
COLOR,
|
||||||
|
ALPHA,
|
||||||
|
COLOR_ALPHA,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace Operator {
|
||||||
|
export const $gtype: GObject.GType<Operator>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Operator {
|
||||||
|
CLEAR,
|
||||||
|
SOURCE,
|
||||||
|
OVER,
|
||||||
|
IN,
|
||||||
|
OUT,
|
||||||
|
ATOP,
|
||||||
|
DEST,
|
||||||
|
DEST_OVER,
|
||||||
|
DEST_IN,
|
||||||
|
DEST_OUT,
|
||||||
|
DEST_ATOP,
|
||||||
|
XOR,
|
||||||
|
ADD,
|
||||||
|
SATURATE,
|
||||||
|
MULTIPLY,
|
||||||
|
SCREEN,
|
||||||
|
OVERLAY,
|
||||||
|
DARKEN,
|
||||||
|
LIGHTEN,
|
||||||
|
COLOR_DODGE,
|
||||||
|
COLOR_BURN,
|
||||||
|
HARD_LIGHT,
|
||||||
|
SOFT_LIGHT,
|
||||||
|
DIFFERENCE,
|
||||||
|
EXCLUSION,
|
||||||
|
HSL_HUE,
|
||||||
|
HSL_SATURATION,
|
||||||
|
HSL_COLOR,
|
||||||
|
HSL_LUMINOSITY,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace Antialias {
|
||||||
|
export const $gtype: GObject.GType<Antialias>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Antialias {
|
||||||
|
DEFAULT,
|
||||||
|
NONE,
|
||||||
|
GRAY,
|
||||||
|
SUBPIXEL,
|
||||||
|
FAST,
|
||||||
|
GOOD,
|
||||||
|
BEST,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace FillRule {
|
||||||
|
export const $gtype: GObject.GType<FillRule>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum FillRule {
|
||||||
|
WINDING,
|
||||||
|
EVEN_ODD,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace LineCap {
|
||||||
|
export const $gtype: GObject.GType<LineCap>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum LineCap {
|
||||||
|
BUTT,
|
||||||
|
ROUND,
|
||||||
|
SQUARE,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace LineJoin {
|
||||||
|
export const $gtype: GObject.GType<LineJoin>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum LineJoin {
|
||||||
|
MITER,
|
||||||
|
ROUND,
|
||||||
|
BEVEL,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace TextClusterFlags {
|
||||||
|
export const $gtype: GObject.GType<TextClusterFlags>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum TextClusterFlags {
|
||||||
|
BACKWARD,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace FontSlant {
|
||||||
|
export const $gtype: GObject.GType<FontSlant>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum FontSlant {
|
||||||
|
NORMAL,
|
||||||
|
ITALIC,
|
||||||
|
OBLIQUE,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace FontWeight {
|
||||||
|
export const $gtype: GObject.GType<FontWeight>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum FontWeight {
|
||||||
|
NORMAL,
|
||||||
|
BOLD,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace SubpixelOrder {
|
||||||
|
export const $gtype: GObject.GType<SubpixelOrder>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum SubpixelOrder {
|
||||||
|
DEFAULT,
|
||||||
|
RGB,
|
||||||
|
BGR,
|
||||||
|
VRGB,
|
||||||
|
VBGR,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace HintStyle {
|
||||||
|
export const $gtype: GObject.GType<HintStyle>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum HintStyle {
|
||||||
|
DEFAULT,
|
||||||
|
NONE,
|
||||||
|
SLIGHT,
|
||||||
|
MEDIUM,
|
||||||
|
FULL,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace HintMetrics {
|
||||||
|
export const $gtype: GObject.GType<HintMetrics>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum HintMetrics {
|
||||||
|
DEFAULT,
|
||||||
|
OFF,
|
||||||
|
ON,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace FontType {
|
||||||
|
export const $gtype: GObject.GType<FontType>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum FontType {
|
||||||
|
TOY,
|
||||||
|
FT,
|
||||||
|
WIN32,
|
||||||
|
QUARTZ,
|
||||||
|
USER,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace PathDataType {
|
||||||
|
export const $gtype: GObject.GType<PathDataType>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum PathDataType {
|
||||||
|
MOVE_TO,
|
||||||
|
LINE_TO,
|
||||||
|
CURVE_TO,
|
||||||
|
CLOSE_PATH,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace DeviceType {
|
||||||
|
export const $gtype: GObject.GType<DeviceType>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum DeviceType {
|
||||||
|
DRM,
|
||||||
|
GL,
|
||||||
|
SCRIPT,
|
||||||
|
XCB,
|
||||||
|
XLIB,
|
||||||
|
XML,
|
||||||
|
COGL,
|
||||||
|
WIN32,
|
||||||
|
INVALID,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace SurfaceType {
|
||||||
|
export const $gtype: GObject.GType<SurfaceType>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum SurfaceType {
|
||||||
|
IMAGE,
|
||||||
|
PDF,
|
||||||
|
PS,
|
||||||
|
XLIB,
|
||||||
|
XCB,
|
||||||
|
GLITZ,
|
||||||
|
QUARTZ,
|
||||||
|
WIN32,
|
||||||
|
BEOS,
|
||||||
|
DIRECTFB,
|
||||||
|
SVG,
|
||||||
|
OS2,
|
||||||
|
WIN32_PRINTING,
|
||||||
|
QUARTZ_IMAGE,
|
||||||
|
SCRIPT,
|
||||||
|
QT,
|
||||||
|
RECORDING,
|
||||||
|
VG,
|
||||||
|
GL,
|
||||||
|
DRM,
|
||||||
|
TEE,
|
||||||
|
XML,
|
||||||
|
SKIA,
|
||||||
|
SUBSURFACE,
|
||||||
|
COGL,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace Format {
|
||||||
|
export const $gtype: GObject.GType<Format>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Format {
|
||||||
|
INVALID,
|
||||||
|
ARGB32,
|
||||||
|
RGB24,
|
||||||
|
A8,
|
||||||
|
A1,
|
||||||
|
RGB16_565,
|
||||||
|
RGB30,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace PatternType {
|
||||||
|
export const $gtype: GObject.GType<PatternType>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum PatternType {
|
||||||
|
SOLID,
|
||||||
|
SURFACE,
|
||||||
|
LINEAR,
|
||||||
|
RADIAL,
|
||||||
|
MESH,
|
||||||
|
RASTER_SOURCE,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace Extend {
|
||||||
|
export const $gtype: GObject.GType<Extend>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Extend {
|
||||||
|
NONE,
|
||||||
|
REPEAT,
|
||||||
|
REFLECT,
|
||||||
|
PAD,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace Filter {
|
||||||
|
export const $gtype: GObject.GType<Filter>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Filter {
|
||||||
|
FAST,
|
||||||
|
GOOD,
|
||||||
|
BEST,
|
||||||
|
NEAREST,
|
||||||
|
BILINEAR,
|
||||||
|
GAUSSIAN,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace RegionOverlap {
|
||||||
|
export const $gtype: GObject.GType<RegionOverlap>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum RegionOverlap {
|
||||||
|
IN,
|
||||||
|
OUT,
|
||||||
|
PART,
|
||||||
|
}
|
||||||
|
function image_surface_create(): void;
|
||||||
|
class Context {
|
||||||
|
static $gtype: GObject.GType<Context>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Device {
|
||||||
|
static $gtype: GObject.GType<Device>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Surface {
|
||||||
|
static $gtype: GObject.GType<Surface>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Matrix {
|
||||||
|
static $gtype: GObject.GType<Matrix>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Pattern {
|
||||||
|
static $gtype: GObject.GType<Pattern>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Region {
|
||||||
|
static $gtype: GObject.GType<Region>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class FontOptions {
|
||||||
|
static $gtype: GObject.GType<FontOptions>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class FontFace {
|
||||||
|
static $gtype: GObject.GType<FontFace>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class ScaledFont {
|
||||||
|
static $gtype: GObject.GType<ScaledFont>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Path {
|
||||||
|
static $gtype: GObject.GType<Path>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Rectangle {
|
||||||
|
static $gtype: GObject.GType<Rectangle>;
|
||||||
|
|
||||||
|
// Fields
|
||||||
|
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
width: number;
|
||||||
|
height: number;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
properties?: Partial<{
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
width: number;
|
||||||
|
height: number;
|
||||||
|
}>,
|
||||||
|
);
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class RectangleInt {
|
||||||
|
static $gtype: GObject.GType<RectangleInt>;
|
||||||
|
|
||||||
|
// Fields
|
||||||
|
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
width: number;
|
||||||
|
height: number;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
properties?: Partial<{
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
width: number;
|
||||||
|
height: number;
|
||||||
|
}>,
|
||||||
|
);
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Glyph {
|
||||||
|
static $gtype: GObject.GType<Glyph>;
|
||||||
|
|
||||||
|
// Fields
|
||||||
|
|
||||||
|
index: number;
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
properties?: Partial<{
|
||||||
|
index: number;
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
}>,
|
||||||
|
);
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class TextCluster {
|
||||||
|
static $gtype: GObject.GType<TextCluster>;
|
||||||
|
|
||||||
|
// Fields
|
||||||
|
|
||||||
|
num_bytes: number;
|
||||||
|
num_glyphs: number;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
properties?: Partial<{
|
||||||
|
num_bytes: number;
|
||||||
|
num_glyphs: number;
|
||||||
|
}>,
|
||||||
|
);
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 cairo;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://cairo' {
|
||||||
|
import Cairo10 from 'gi://cairo?version=1.0';
|
||||||
|
export default Cairo10;
|
||||||
|
}
|
||||||
|
// END
|
845
@girs/cairo.d.ts
vendored
Normal file
845
@girs/cairo.d.ts
vendored
Normal file
|
@ -0,0 +1,845 @@
|
||||||
|
declare module 'cairo' {
|
||||||
|
// Cairo 1.0
|
||||||
|
import Cairo from 'gi://cairo?version=1.0';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
namespace giCairo {
|
||||||
|
// Re-export enums directly from Cairo
|
||||||
|
export import Status = Cairo.Status;
|
||||||
|
export import Content = Cairo.Content;
|
||||||
|
export import Operator = Cairo.Operator;
|
||||||
|
export import Antialias = Cairo.Antialias;
|
||||||
|
export import FillRule = Cairo.FillRule;
|
||||||
|
export import LineCap = Cairo.LineCap;
|
||||||
|
export import LineJoin = Cairo.LineJoin;
|
||||||
|
export import TextClusterFlags = Cairo.TextClusterFlags;
|
||||||
|
export import FontSlant = Cairo.FontSlant;
|
||||||
|
export import FontWeight = Cairo.FontWeight;
|
||||||
|
export import SubpixelOrder = Cairo.SubpixelOrder;
|
||||||
|
export import HintStyle = Cairo.HintStyle;
|
||||||
|
export import HintMetrics = Cairo.HintMetrics;
|
||||||
|
export import FontType = Cairo.FontType;
|
||||||
|
export import PathDataType = Cairo.PathDataType;
|
||||||
|
export import DeviceType = Cairo.DeviceType;
|
||||||
|
export import SurfaceType = Cairo.SurfaceType;
|
||||||
|
export import Format = Cairo.Format;
|
||||||
|
export import PatternType = Cairo.PatternType;
|
||||||
|
export import Extend = Cairo.Extend;
|
||||||
|
export import Filter = Cairo.Filter;
|
||||||
|
export import RegionOverlap = Cairo.RegionOverlap;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Describes the metrics of a string of text
|
||||||
|
*/
|
||||||
|
export interface TextExtents {
|
||||||
|
/** The horizontal distance from the origin to the leftmost part of the text */
|
||||||
|
xBearing: number;
|
||||||
|
/** The vertical distance from the origin to the topmost part of the text */
|
||||||
|
yBearing: number;
|
||||||
|
/** The width of the text */
|
||||||
|
width: number;
|
||||||
|
/** The height of the text */
|
||||||
|
height: number;
|
||||||
|
/** The distance to advance horizontally after drawing the text */
|
||||||
|
xAdvance: number;
|
||||||
|
/** The distance to advance vertically after drawing the text */
|
||||||
|
yAdvance: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The main Cairo drawing context
|
||||||
|
*
|
||||||
|
* A Cairo context is used to draw to surfaces and perform drawing operations.
|
||||||
|
* When you're done with a context, you must call $dispose() to free memory.
|
||||||
|
*/
|
||||||
|
export class Context extends Cairo.Context {
|
||||||
|
/**
|
||||||
|
* Creates a new Cairo context for drawing to the given surface
|
||||||
|
* @param surface The surface to draw on
|
||||||
|
*/
|
||||||
|
constructor(surface: Surface);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Free a Cairo.Context and all associated memory
|
||||||
|
*
|
||||||
|
* Unlike other objects in GJS, Cairo contexts must be explicitly disposed
|
||||||
|
* to avoid memory leaks.
|
||||||
|
*/
|
||||||
|
$dispose(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds a circular arc of the given radius to the current path
|
||||||
|
* @param xc X coordinate of the center of the arc
|
||||||
|
* @param yc Y coordinate of the center of the arc
|
||||||
|
* @param radius Radius of the arc
|
||||||
|
* @param angle1 Starting angle in radians
|
||||||
|
* @param angle2 End angle in radians
|
||||||
|
*/
|
||||||
|
arc(xc: number, yc: number, radius: number, angle1: number, angle2: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds a circular arc of the given radius to the current path, but draws
|
||||||
|
* the arc in the opposite direction from arc()
|
||||||
|
* @param xc X coordinate of the center of the arc
|
||||||
|
* @param yc Y coordinate of the center of the arc
|
||||||
|
* @param radius Radius of the arc
|
||||||
|
* @param angle1 Starting angle in radians
|
||||||
|
* @param angle2 End angle in radians
|
||||||
|
*/
|
||||||
|
arcNegative(xc: number, yc: number, radius: number, angle1: number, angle2: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds a cubic Bézier spline to the current path
|
||||||
|
* @param x1 X coordinate of the first control point
|
||||||
|
* @param y1 Y coordinate of the first control point
|
||||||
|
* @param x2 X coordinate of the second control point
|
||||||
|
* @param y2 Y coordinate of the second control point
|
||||||
|
* @param x3 X coordinate of the end point
|
||||||
|
* @param y3 Y coordinate of the end point
|
||||||
|
*/
|
||||||
|
curveTo(x1: number, y1: number, x2: number, y2: number, x3: number, y3: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Establishes a new clip region by intersecting the current clip region
|
||||||
|
* with the current path, then clearing the current path
|
||||||
|
*/
|
||||||
|
clip(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Like clip() but preserves the current path
|
||||||
|
*/
|
||||||
|
clipPreserve(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the current clip extents as [x1, y1, x2, y2]
|
||||||
|
* @returns An array with [x1, y1, x2, y2] clip extents
|
||||||
|
*/
|
||||||
|
clipExtents(): [number, number, number, number];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Closes the current path by drawing a line to the beginning of the current subpath
|
||||||
|
*/
|
||||||
|
closePath(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Emits the current page, but doesn't clear it
|
||||||
|
*/
|
||||||
|
copyPage(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Transforms a coordinate from device space to user space
|
||||||
|
* @param x X coordinate
|
||||||
|
* @param y Y coordinate
|
||||||
|
* @returns An array with [x, y] transformed coordinates
|
||||||
|
*/
|
||||||
|
deviceToUser(x: number, y: number): [number, number];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Transforms a distance vector from device space to user space
|
||||||
|
* @param x X component of the distance vector
|
||||||
|
* @param y Y component of the distance vector
|
||||||
|
* @returns An array with [x, y] transformed distance vector
|
||||||
|
*/
|
||||||
|
deviceToUserDistance(x: number, y: number): [number, number];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fills the current path using the current fill rule, then clears the path
|
||||||
|
*/
|
||||||
|
fill(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fills the current path using the current fill rule, but doesn't clear the path
|
||||||
|
*/
|
||||||
|
fillPreserve(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the current fill extents as [x1, y1, x2, y2]
|
||||||
|
* @returns An array with [x1, y1, x2, y2] fill extents
|
||||||
|
*/
|
||||||
|
fillExtents(): [number, number, number, number];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the current antialiasing mode
|
||||||
|
* @returns The current antialiasing mode
|
||||||
|
*/
|
||||||
|
getAntialias(): Antialias;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the current point of the current path
|
||||||
|
* @returns An array with [x, y] coordinates of the current point
|
||||||
|
*/
|
||||||
|
getCurrentPoint(): [number, number];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the current dash count
|
||||||
|
* @returns The number of elements in the current dash pattern
|
||||||
|
*/
|
||||||
|
getDashCount(): number;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the current fill rule
|
||||||
|
* @returns The current fill rule
|
||||||
|
*/
|
||||||
|
getFillRule(): FillRule;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the current line cap style
|
||||||
|
* @returns The current line cap style
|
||||||
|
*/
|
||||||
|
getLineCap(): LineCap;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the current line join style
|
||||||
|
* @returns The current line join style
|
||||||
|
*/
|
||||||
|
getLineJoin(): LineJoin;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the current line width
|
||||||
|
* @returns The current line width
|
||||||
|
*/
|
||||||
|
getLineWidth(): number;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the current miter limit
|
||||||
|
* @returns The current miter limit
|
||||||
|
*/
|
||||||
|
getMiterLimit(): number;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the current compositing operator
|
||||||
|
* @returns The current compositing operator
|
||||||
|
*/
|
||||||
|
getOperator(): Operator;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the current source pattern
|
||||||
|
* @returns The current source pattern
|
||||||
|
*/
|
||||||
|
getSource(): Pattern;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the surface the Cairo context is drawing on
|
||||||
|
* @returns The target surface
|
||||||
|
*/
|
||||||
|
getTarget(): Surface;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the current tolerance value
|
||||||
|
* @returns The current tolerance value
|
||||||
|
*/
|
||||||
|
getTolerance(): number;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Checks if there is a current point defined
|
||||||
|
* @returns True if there is a current point
|
||||||
|
*/
|
||||||
|
hasCurrentPoint(): boolean;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Resets the current transformation matrix to the identity matrix
|
||||||
|
*/
|
||||||
|
identityMatrix(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Tests whether the given point is inside the area filled by the current path
|
||||||
|
* @param x X coordinate of the point to test
|
||||||
|
* @param y Y coordinate of the point to test
|
||||||
|
* @returns True if the point is inside the path
|
||||||
|
*/
|
||||||
|
inFill(x: number, y: number): boolean;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Tests whether the given point is inside the area that would be inked
|
||||||
|
* by the current path with the current line width and stroke parameters
|
||||||
|
* @param x X coordinate of the point to test
|
||||||
|
* @param y Y coordinate of the point to test
|
||||||
|
* @returns True if the point would be inked
|
||||||
|
*/
|
||||||
|
inStroke(x: number, y: number): boolean;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds a line to the current path from the current point to the given point
|
||||||
|
* @param x X coordinate of the end point
|
||||||
|
* @param y Y coordinate of the end point
|
||||||
|
*/
|
||||||
|
lineTo(x: number, y: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the current mask pattern used for painting operations
|
||||||
|
* @param pattern A pattern to use as mask
|
||||||
|
*/
|
||||||
|
mask(pattern: Pattern): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the current mask to a surface
|
||||||
|
* @param surface A surface to use as mask
|
||||||
|
* @param x X coordinate at which to place the origin of the surface
|
||||||
|
* @param y Y coordinate at which to place the origin of the surface
|
||||||
|
*/
|
||||||
|
maskSurface(surface: Surface, x: number, y: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Begins a new subpath at the given point
|
||||||
|
* @param x X coordinate of the new position
|
||||||
|
* @param y Y coordinate of the new position
|
||||||
|
*/
|
||||||
|
moveTo(x: number, y: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Clears the current path and begins a new path
|
||||||
|
*/
|
||||||
|
newPath(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Begins a new subpath without changing the current point
|
||||||
|
*/
|
||||||
|
newSubPath(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Paints the current source everywhere within the current clip region
|
||||||
|
*/
|
||||||
|
paint(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Paints the current source everywhere within the current clip region
|
||||||
|
* using the given alpha value
|
||||||
|
* @param alpha Alpha value to use, between 0 and 1
|
||||||
|
*/
|
||||||
|
paintWithAlpha(alpha: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the current path extents as [x1, y1, x2, y2]
|
||||||
|
* @returns An array with [x1, y1, x2, y2] path extents
|
||||||
|
*/
|
||||||
|
pathExtents(): [number, number, number, number];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Terminates the current pattern group and returns a new pattern
|
||||||
|
* representing everything drawn to the group
|
||||||
|
* @returns A new pattern representing the group
|
||||||
|
*/
|
||||||
|
popGroup(): Pattern;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Terminates the current pattern group and makes it the current source pattern
|
||||||
|
*/
|
||||||
|
popGroupToSource(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Temporarily redirects drawing to an intermediate surface
|
||||||
|
*/
|
||||||
|
pushGroup(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Temporarily redirects drawing to an intermediate surface with the given content
|
||||||
|
* @param content The content type for the group
|
||||||
|
*/
|
||||||
|
pushGroupWithContent(content: Content): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds a rectangle to the current path
|
||||||
|
* @param x X coordinate of the top-left corner
|
||||||
|
* @param y Y coordinate of the top-left corner
|
||||||
|
* @param width Width of the rectangle
|
||||||
|
* @param height Height of the rectangle
|
||||||
|
*/
|
||||||
|
rectangle(x: number, y: number, width: number, height: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds a cubic Bézier spline to the current path using relative coordinates
|
||||||
|
* @param dx1 X offset to the first control point from current point
|
||||||
|
* @param dy1 Y offset to the first control point from current point
|
||||||
|
* @param dx2 X offset to the second control point from current point
|
||||||
|
* @param dy2 Y offset to the second control point from current point
|
||||||
|
* @param dx3 X offset to the end point from current point
|
||||||
|
* @param dy3 Y offset to the end point from current point
|
||||||
|
*/
|
||||||
|
relCurveTo(dx1: number, dy1: number, dx2: number, dy2: number, dx3: number, dy3: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds a line to the current path relative to the current point
|
||||||
|
* @param dx X offset from the current point
|
||||||
|
* @param dy Y offset from the current point
|
||||||
|
*/
|
||||||
|
relLineTo(dx: number, dy: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Begins a new subpath relative to the current point
|
||||||
|
* @param dx X offset from the current point
|
||||||
|
* @param dy Y offset from the current point
|
||||||
|
*/
|
||||||
|
relMoveTo(dx: number, dy: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Resets the current clip region to its original, unrestricted state
|
||||||
|
*/
|
||||||
|
resetClip(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Restores the context state from the stack
|
||||||
|
*/
|
||||||
|
restore(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Rotates the current transformation matrix
|
||||||
|
* @param angle Angle of rotation in radians
|
||||||
|
*/
|
||||||
|
rotate(angle: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Saves the current context state to the stack
|
||||||
|
*/
|
||||||
|
save(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Scales the current transformation matrix
|
||||||
|
* @param sx Scale factor for the X dimension
|
||||||
|
* @param sy Scale factor for the Y dimension
|
||||||
|
*/
|
||||||
|
scale(sx: number, sy: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Selects a font face
|
||||||
|
* @param family A font family name
|
||||||
|
* @param slant A font slant
|
||||||
|
* @param weight A font weight
|
||||||
|
*/
|
||||||
|
selectFontFace(family: string, slant: number, weight: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the antialiasing mode
|
||||||
|
* @param antialias The new antialiasing mode
|
||||||
|
*/
|
||||||
|
setAntialias(antialias: Antialias): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the dash pattern to be used by stroke()
|
||||||
|
* @param dashes Array of dash lengths
|
||||||
|
* @param offset Offset into the dash pattern
|
||||||
|
*/
|
||||||
|
setDash(dashes: number[], offset: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the current font size in user space units
|
||||||
|
* @param size Font size in user space units
|
||||||
|
*/
|
||||||
|
setFontSize(size: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the current fill rule
|
||||||
|
* @param fillRule The new fill rule
|
||||||
|
*/
|
||||||
|
setFillRule(fillRule: FillRule): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the current line cap style
|
||||||
|
* @param lineCap The new line cap style
|
||||||
|
*/
|
||||||
|
setLineCap(lineCap: LineCap): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the current line join style
|
||||||
|
* @param lineJoin The new line join style
|
||||||
|
*/
|
||||||
|
setLineJoin(lineJoin: LineJoin): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the current line width
|
||||||
|
* @param width The new line width
|
||||||
|
*/
|
||||||
|
setLineWidth(width: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the current miter limit
|
||||||
|
* @param limit The new miter limit
|
||||||
|
*/
|
||||||
|
setMiterLimit(limit: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the current compositing operator
|
||||||
|
* @param op The new compositing operator
|
||||||
|
*/
|
||||||
|
setOperator(op: Operator): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the current source pattern
|
||||||
|
* @param pattern The new source pattern
|
||||||
|
*/
|
||||||
|
setSource(pattern: Pattern): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the source pattern to an RGB opaque color
|
||||||
|
* @param red Red component, between 0 and 1
|
||||||
|
* @param green Green component, between 0 and 1
|
||||||
|
* @param blue Blue component, between 0 and 1
|
||||||
|
*/
|
||||||
|
setSourceRGB(red: number, green: number, blue: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the source pattern to an RGBA color
|
||||||
|
* @param red Red component, between 0 and 1
|
||||||
|
* @param green Green component, between 0 and 1
|
||||||
|
* @param blue Blue component, between 0 and 1
|
||||||
|
* @param alpha Alpha component, between 0 and 1
|
||||||
|
*/
|
||||||
|
setSourceRGBA(red: number, green: number, blue: number, alpha: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the source pattern to the given surface
|
||||||
|
* @param surface The new source surface
|
||||||
|
* @param x X coordinate where to place the surface origin
|
||||||
|
* @param y Y coordinate where to place the surface origin
|
||||||
|
*/
|
||||||
|
setSourceSurface(surface: Surface, x: number, y: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the tolerance used when converting paths to trapezoids
|
||||||
|
* @param tolerance The new tolerance value
|
||||||
|
*/
|
||||||
|
setTolerance(tolerance: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Emits the current page and clears it
|
||||||
|
*/
|
||||||
|
showPage(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Draws text at the current position
|
||||||
|
* @param utf8 A string of text encoded in UTF-8
|
||||||
|
*/
|
||||||
|
showText(utf8: string): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Strokes the current path using the current line width, line join,
|
||||||
|
* line cap, and dash settings, then clears the path
|
||||||
|
*/
|
||||||
|
stroke(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Like stroke() but preserves the current path
|
||||||
|
*/
|
||||||
|
strokePreserve(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the current stroke extents as [x1, y1, x2, y2]
|
||||||
|
* @returns An array with [x1, y1, x2, y2] stroke extents
|
||||||
|
*/
|
||||||
|
strokeExtents(): [number, number, number, number];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the extents of the given text if it were drawn at the current point
|
||||||
|
* @param utf8 A string of text encoded in UTF-8
|
||||||
|
* @returns Text extents information
|
||||||
|
*/
|
||||||
|
textExtents(utf8: string): TextExtents;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Translates the current transformation matrix
|
||||||
|
* @param tx Translation in the X direction
|
||||||
|
* @param ty Translation in the Y direction
|
||||||
|
*/
|
||||||
|
translate(tx: number, ty: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Transforms a coordinate from user space to device space
|
||||||
|
* @param x X coordinate
|
||||||
|
* @param y Y coordinate
|
||||||
|
* @returns An array with [x, y] transformed coordinates
|
||||||
|
*/
|
||||||
|
userToDevice(x: number, y: number): [number, number];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Transforms a distance vector from user space to device space
|
||||||
|
* @param x X component of the distance vector
|
||||||
|
* @param y Y component of the distance vector
|
||||||
|
* @returns An array with [x, y] transformed distance vector
|
||||||
|
*/
|
||||||
|
userToDeviceDistance(x: number, y: number): [number, number];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a copy of the current path and returns it
|
||||||
|
* @returns A copy of the current path
|
||||||
|
*/
|
||||||
|
copyPath(): Path;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Appends a path to the current path
|
||||||
|
* @param path A path to append
|
||||||
|
*/
|
||||||
|
appendPath(path: Path): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Base class for all Cairo surfaces
|
||||||
|
*/
|
||||||
|
export abstract class Surface extends Cairo.Surface {
|
||||||
|
/**
|
||||||
|
* Gets the device scale of the surface
|
||||||
|
* @returns An array with [x, y] device scale
|
||||||
|
*/
|
||||||
|
getDeviceScale(): [number, number];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the device scale of the surface
|
||||||
|
* @param x X scale factor
|
||||||
|
* @param y Y scale factor
|
||||||
|
*/
|
||||||
|
setDeviceScale(x: number, y: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the device offset of the surface
|
||||||
|
* @returns An array with [x, y] device offset
|
||||||
|
*/
|
||||||
|
getDeviceOffset(): [number, number];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the device offset of the surface
|
||||||
|
* @param x X offset
|
||||||
|
* @param y Y offset
|
||||||
|
*/
|
||||||
|
setDeviceOffset(x: number, y: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Performs all pending drawing operations
|
||||||
|
*/
|
||||||
|
flush(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Finishes the surface and drops all references to external resources
|
||||||
|
*/
|
||||||
|
finish(): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A surface that uses in-memory image data buffers
|
||||||
|
*/
|
||||||
|
export class ImageSurface extends Surface {
|
||||||
|
/**
|
||||||
|
* Creates a new image surface
|
||||||
|
* @param format The format of pixels in the surface
|
||||||
|
* @param width Width of the surface in pixels
|
||||||
|
* @param height Height of the surface in pixels
|
||||||
|
*/
|
||||||
|
constructor(format: Format, width: number, height: number);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a new image surface from a PNG file
|
||||||
|
* @param filename Path to a PNG file
|
||||||
|
* @returns A new image surface
|
||||||
|
*/
|
||||||
|
static createFromPNG(filename: string): ImageSurface;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the format of the surface
|
||||||
|
* @returns The format of the surface
|
||||||
|
*/
|
||||||
|
getFormat(): Format;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the width of the surface in pixels
|
||||||
|
* @returns The width of the surface
|
||||||
|
*/
|
||||||
|
getWidth(): number;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the height of the surface in pixels
|
||||||
|
* @returns The height of the surface
|
||||||
|
*/
|
||||||
|
getHeight(): number;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Writes the contents of the surface to a PNG file
|
||||||
|
* @param filename Path to the PNG file to write
|
||||||
|
*/
|
||||||
|
writeToPNG(filename: string): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A surface that produces output in the PDF format
|
||||||
|
*/
|
||||||
|
export class PDFSurface extends Surface {
|
||||||
|
/**
|
||||||
|
* Creates a new PDF surface
|
||||||
|
* @param filename Path to the PDF file to write to
|
||||||
|
* @param width Width of the surface in points (1 point = 1/72 inch)
|
||||||
|
* @param height Height of the surface in points (1 point = 1/72 inch)
|
||||||
|
*/
|
||||||
|
constructor(filename: string, width: number, height: number);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A surface that produces output in the PostScript format
|
||||||
|
*/
|
||||||
|
export class PSSurface extends Surface {
|
||||||
|
/**
|
||||||
|
* Creates a new PostScript surface
|
||||||
|
* @param filename Path to the PostScript file to write to
|
||||||
|
* @param width Width of the surface in points (1 point = 1/72 inch)
|
||||||
|
* @param height Height of the surface in points (1 point = 1/72 inch)
|
||||||
|
*/
|
||||||
|
constructor(filename: string, width: number, height: number);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A surface that produces output in the SVG format
|
||||||
|
*/
|
||||||
|
export class SVGSurface extends Surface {
|
||||||
|
/**
|
||||||
|
* Creates a new SVG surface
|
||||||
|
* @param filename Path to the SVG file to write to
|
||||||
|
* @param width Width of the surface in points (1 point = 1/72 inch)
|
||||||
|
* @param height Height of the surface in points (1 point = 1/72 inch)
|
||||||
|
*/
|
||||||
|
constructor(filename: string, width: number, height: number);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Base class for all Cairo patterns
|
||||||
|
*/
|
||||||
|
export class Pattern extends Cairo.Pattern {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Base class for all gradient patterns
|
||||||
|
*/
|
||||||
|
export class Gradient extends Pattern {
|
||||||
|
/**
|
||||||
|
* Adds a color stop to the gradient at the given offset
|
||||||
|
* @param offset Offset position of the stop, between 0 and 1
|
||||||
|
* @param red Red component, between 0 and 1
|
||||||
|
* @param green Green component, between 0 and 1
|
||||||
|
* @param blue Blue component, between 0 and 1
|
||||||
|
* @param alpha Alpha component, between 0 and 1
|
||||||
|
*/
|
||||||
|
addColorStopRGBA(offset: number, red: number, green: number, blue: number, alpha: number): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds an opaque color stop to the gradient at the given offset
|
||||||
|
* @param offset Offset position of the stop, between 0 and 1
|
||||||
|
* @param red Red component, between 0 and 1
|
||||||
|
* @param green Green component, between 0 and 1
|
||||||
|
* @param blue Blue component, between 0 and 1
|
||||||
|
*/
|
||||||
|
addColorStopRGB(offset: number, red: number, green: number, blue: number): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A pattern for linear gradients
|
||||||
|
*/
|
||||||
|
export class LinearGradient extends Gradient {
|
||||||
|
/**
|
||||||
|
* Creates a new linear gradient pattern
|
||||||
|
* @param x0 X coordinate of the start point
|
||||||
|
* @param y0 Y coordinate of the start point
|
||||||
|
* @param x1 X coordinate of the end point
|
||||||
|
* @param y1 Y coordinate of the end point
|
||||||
|
*/
|
||||||
|
constructor(x0: number, y0: number, x1: number, y1: number);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A pattern for radial gradients
|
||||||
|
*/
|
||||||
|
export class RadialGradient extends Gradient {
|
||||||
|
/**
|
||||||
|
* Creates a new radial gradient pattern
|
||||||
|
* @param cx0 X coordinate of the start circle
|
||||||
|
* @param cy0 Y coordinate of the start circle
|
||||||
|
* @param radius0 Radius of the start circle
|
||||||
|
* @param cx1 X coordinate of the end circle
|
||||||
|
* @param cy1 Y coordinate of the end circle
|
||||||
|
* @param radius1 Radius of the end circle
|
||||||
|
*/
|
||||||
|
constructor(cx0: number, cy0: number, radius0: number, cx1: number, cy1: number, radius1: number);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A pattern that uses a surface as its source
|
||||||
|
*/
|
||||||
|
export class SurfacePattern extends Pattern {
|
||||||
|
/**
|
||||||
|
* Creates a new pattern for the given surface
|
||||||
|
* @param surface The surface to use
|
||||||
|
*/
|
||||||
|
constructor(surface: Surface);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A pattern for solid colors
|
||||||
|
*/
|
||||||
|
export class SolidPattern extends Pattern {
|
||||||
|
/**
|
||||||
|
* Creates a new solid pattern with an opaque color
|
||||||
|
* @param red Red component, between 0 and 1
|
||||||
|
* @param green Green component, between 0 and 1
|
||||||
|
* @param blue Blue component, between 0 and 1
|
||||||
|
* @returns A new solid pattern
|
||||||
|
*/
|
||||||
|
static createRGB(red: number, green: number, blue: number): SolidPattern;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a new solid pattern with a transparent color
|
||||||
|
* @param red Red component, between 0 and 1
|
||||||
|
* @param green Green component, between 0 and 1
|
||||||
|
* @param blue Blue component, between 0 and 1
|
||||||
|
* @param alpha Alpha component, between 0 and 1
|
||||||
|
* @returns A new solid pattern
|
||||||
|
*/
|
||||||
|
static createRGBA(red: number, green: number, blue: number, alpha: number): SolidPattern;
|
||||||
|
}
|
||||||
|
|
||||||
|
export class Path extends Cairo.Path {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A rectangle
|
||||||
|
*/
|
||||||
|
export class Rectangle extends Cairo.Rectangle {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A rectangle integer
|
||||||
|
*/
|
||||||
|
export class RectangleInt extends Cairo.RectangleInt {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A region object used for representing a set of pixels
|
||||||
|
*/
|
||||||
|
export class Region extends Cairo.Region {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A matrix object used for transforming coordinates
|
||||||
|
*/
|
||||||
|
export class Matrix extends Cairo.Matrix {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A font face object used for storing and manipulating font faces
|
||||||
|
*/
|
||||||
|
export class FontFace extends Cairo.FontFace {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A scaled font object used for storing and manipulating scaled fonts
|
||||||
|
*/
|
||||||
|
export class ScaledFont extends Cairo.ScaledFont {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A glyph object used for storing and manipulating glyphs
|
||||||
|
*/
|
||||||
|
export class Glyph extends Cairo.Glyph {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A text cluster object used for storing and manipulating text clusters
|
||||||
|
*/
|
||||||
|
export class TextCluster extends Cairo.TextCluster {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A font options object used for storing and manipulating font options
|
||||||
|
*/
|
||||||
|
export class FontOptions extends Cairo.FontOptions {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A device object used for storing and manipulating devices
|
||||||
|
*/
|
||||||
|
export class Device extends Cairo.Device {}
|
||||||
|
}
|
||||||
|
|
||||||
|
export default giCairo;
|
||||||
|
}
|
23
@girs/console.d.ts
vendored
Normal file
23
@girs/console.d.ts
vendored
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
declare module 'console' {
|
||||||
|
/**
|
||||||
|
* @param logDomain the GLib log domain this Console should print
|
||||||
|
* with. Defaults to 'Gjs-Console'.
|
||||||
|
*/
|
||||||
|
export function setConsoleLogDomain(logDomain: string): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param logDomain the GLib log domain this Console should print
|
||||||
|
* with. Defaults to 'Gjs-Console'.
|
||||||
|
*/
|
||||||
|
export function getConsoleLogDomain(): string;
|
||||||
|
|
||||||
|
export const DEFAULT_LOG_DOMAIN: string;
|
||||||
|
|
||||||
|
const Console: {
|
||||||
|
setConsoleLogDomain: typeof setConsoleLogDomain;
|
||||||
|
getConsoleLogDomain: typeof getConsoleLogDomain;
|
||||||
|
DEFAULT_LOG_DOMAIN: typeof DEFAULT_LOG_DOMAIN;
|
||||||
|
};
|
||||||
|
|
||||||
|
export default Console;
|
||||||
|
}
|
89
@girs/dbus-1.0.d.ts
vendored
Normal file
89
@girs/dbus-1.0.d.ts
vendored
Normal file
|
@ -0,0 +1,89 @@
|
||||||
|
/// <reference path="./gobject-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://DBus?version=1.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
export namespace DBus {
|
||||||
|
/**
|
||||||
|
* DBus-1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
export namespace BusType {
|
||||||
|
export const $gtype: GObject.GType<BusType>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum BusType {
|
||||||
|
SESSION,
|
||||||
|
SYSTEM,
|
||||||
|
STARTER,
|
||||||
|
}
|
||||||
|
class Connection {
|
||||||
|
static $gtype: GObject.GType<Connection>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Error {
|
||||||
|
static $gtype: GObject.GType<Error>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Message {
|
||||||
|
static $gtype: GObject.GType<Message>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class MessageIter {
|
||||||
|
static $gtype: GObject.GType<MessageIter>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class PendingCall {
|
||||||
|
static $gtype: GObject.GType<PendingCall>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 DBus;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://DBus' {
|
||||||
|
import DBus10 from 'gi://DBus?version=1.0';
|
||||||
|
export default DBus10;
|
||||||
|
}
|
||||||
|
// END
|
82
@girs/dbusglib-1.0.d.ts
vendored
Normal file
82
@girs/dbusglib-1.0.d.ts
vendored
Normal file
|
@ -0,0 +1,82 @@
|
||||||
|
/// <reference path="./gobject-2.0.d.ts" />
|
||||||
|
/// <reference path="./glib-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://DBusGLib?version=1.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
|
||||||
|
export namespace DBusGLib {
|
||||||
|
/**
|
||||||
|
* DBusGLib-1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Proxy {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Proxy extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Proxy>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Proxy.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Connection {
|
||||||
|
static $gtype: GObject.GType<Connection>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class MethodInvocation {
|
||||||
|
static $gtype: GObject.GType<MethodInvocation>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class ProxyClass {
|
||||||
|
static $gtype: GObject.GType<ProxyClass>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 DBusGLib;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://DBusGLib' {
|
||||||
|
import DBusGLib10 from 'gi://DBusGLib?version=1.0';
|
||||||
|
export default DBusGLib10;
|
||||||
|
}
|
||||||
|
// END
|
306
@girs/dom.d.ts
vendored
Normal file
306
@girs/dom.d.ts
vendored
Normal file
|
@ -0,0 +1,306 @@
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gjs has implemented some functionality from the DOM API,
|
||||||
|
* this leads to a conflict when all DOM (`lib.dom.d.ts`) should be used.
|
||||||
|
* This should normally not be the case, since the other - not yet reimplemented - API's cannot be used in GJS anyway.
|
||||||
|
*
|
||||||
|
* If for some reason the entire DOM types should still be used,
|
||||||
|
* this file can be ignored and `lib.dom.d.ts` used instead, otherwise this file should be imported in your project.
|
||||||
|
*
|
||||||
|
* See also https://github.com/microsoft/TypeScript/blob/main/lib/lib.dom.d.ts
|
||||||
|
*/
|
||||||
|
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
declare global {
|
||||||
|
interface ImportMeta {
|
||||||
|
/**
|
||||||
|
* The absolute file: or resource: URL of the module.
|
||||||
|
*
|
||||||
|
* @see https://gitlab.gnome.org/GNOME/gjs/-/blob/master/doc/ESModules.md#importmetaurl
|
||||||
|
*/
|
||||||
|
url: string; // with readonly this type is incompatible with e.g. https://github.com/vitejs/vite/blob/main/packages/vite/types/importMeta.d.ts
|
||||||
|
}
|
||||||
|
|
||||||
|
// Timers
|
||||||
|
// See https://gitlab.gnome.org/GNOME/gjs/-/blob/master/modules/esm/_timers.js
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @version Gjs 1.71.1
|
||||||
|
* @param callback a callback function
|
||||||
|
* @param delay the duration in milliseconds to wait before running callback
|
||||||
|
* @param args arguments to pass to callback
|
||||||
|
*/
|
||||||
|
function setTimeout(callback: (...args: any[]) => any, delay?: number, ...args: any[]): GLib.Source;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @version Gjs 1.71.1
|
||||||
|
* @param callback a callback function
|
||||||
|
* @param delay the duration in milliseconds to wait between calling callback
|
||||||
|
* @param args arguments to pass to callback
|
||||||
|
*/
|
||||||
|
function setInterval(callback: (...args: any[]) => any, delay?: number, ...args: any[]): GLib.Source;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @version Gjs 1.71.1
|
||||||
|
* @param timeout the timeout to clear
|
||||||
|
*/
|
||||||
|
function clearTimeout(timeout: GLib.Source): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @version Gjs 1.71.1
|
||||||
|
* @param timeout the timeout to clear
|
||||||
|
*/
|
||||||
|
function clearInterval(timeout: GLib.Source): void;
|
||||||
|
|
||||||
|
interface Console {
|
||||||
|
/**
|
||||||
|
* Logs a critical message if the condition is not truthy.
|
||||||
|
* {@link console.error()} for additional information.
|
||||||
|
*
|
||||||
|
* @param condition a boolean condition which, if false, causes
|
||||||
|
* the log to print
|
||||||
|
* @param data formatting substitutions, if applicable
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
|
assert(condition: boolean, ...data: any[]): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Resets grouping and clears the terminal on systems supporting ANSI
|
||||||
|
* terminal control sequences.
|
||||||
|
*
|
||||||
|
* In file-based stdout or systems which do not support clearing,
|
||||||
|
* console.clear() has no visual effect.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
clear(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Logs a message with severity equal to {@link GLib.LogLevelFlags.DEBUG}.
|
||||||
|
*
|
||||||
|
* @param {...any} data formatting substitutions, if applicable
|
||||||
|
*/
|
||||||
|
debug(...data: any[]): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Logs a message with severity equal to {@link GLib.LogLevelFlags.CRITICAL}.
|
||||||
|
* Does not use {@link GLib.LogLevelFlags.ERROR} to avoid asserting and
|
||||||
|
* forcibly shutting down the application.
|
||||||
|
*
|
||||||
|
* @param data formatting substitutions, if applicable
|
||||||
|
*/
|
||||||
|
error(...data: any[]): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Logs a message with severity equal to {@link GLib.LogLevelFlags.INFO}.
|
||||||
|
*
|
||||||
|
* @param data formatting substitutions, if applicable
|
||||||
|
*/
|
||||||
|
info(...data: any[]): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Logs a message with severity equal to {@link GLib.LogLevelFlags.MESSAGE}.
|
||||||
|
*
|
||||||
|
* @param data formatting substitutions, if applicable
|
||||||
|
*/
|
||||||
|
log(...data: any[]): void;
|
||||||
|
|
||||||
|
// 1.1.7 table(tabularData, properties)
|
||||||
|
table(tabularData: any, _properties: never): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param data formatting substitutions, if applicable
|
||||||
|
*/
|
||||||
|
trace(...data: any[]): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param data formatting substitutions, if applicable
|
||||||
|
*/
|
||||||
|
warn(...data: any[]): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param item an item to format generically
|
||||||
|
* @param [options] any additional options for the formatter. Unused
|
||||||
|
* in our implementation.
|
||||||
|
*/
|
||||||
|
dir(item: object, options: never): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param data formatting substitutions, if applicable
|
||||||
|
*/
|
||||||
|
dirxml(...data: any[]): void;
|
||||||
|
|
||||||
|
// 1.2 Counting functions
|
||||||
|
// https://console.spec.whatwg.org/#counting
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Logs how many times console.count(label) has been called with a given
|
||||||
|
* label.
|
||||||
|
* {@link console.countReset()} for resetting a count.
|
||||||
|
*
|
||||||
|
* @param label unique identifier for this action
|
||||||
|
*/
|
||||||
|
count(label: string): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param label the unique label to reset the count for
|
||||||
|
*/
|
||||||
|
countReset(label: string): void;
|
||||||
|
|
||||||
|
// 1.3 Grouping functions
|
||||||
|
// https://console.spec.whatwg.org/#grouping
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param data formatting substitutions, if applicable
|
||||||
|
*/
|
||||||
|
group(...data: any[]): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Alias for console.group()
|
||||||
|
*
|
||||||
|
* @param {...any} data formatting substitutions, if applicable
|
||||||
|
*/
|
||||||
|
groupCollapsed(...data: any[]): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*/
|
||||||
|
groupEnd(): void;
|
||||||
|
|
||||||
|
// 1.4 Timing functions
|
||||||
|
// https://console.spec.whatwg.org/#timing
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param label unique identifier for this action, pass to
|
||||||
|
* console.timeEnd() to complete
|
||||||
|
*/
|
||||||
|
time(label: string): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Logs the time since the last call to console.time(label) where label is
|
||||||
|
* the same.
|
||||||
|
*
|
||||||
|
* @param label unique identifier for this action, pass to
|
||||||
|
* console.timeEnd() to complete
|
||||||
|
* @param data string substitutions, if applicable
|
||||||
|
*/
|
||||||
|
timeLog(label: string, ...data: any[]): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Logs the time since the last call to console.time(label) and completes
|
||||||
|
* the action.
|
||||||
|
* Call console.time(label) again to re-measure.
|
||||||
|
*
|
||||||
|
* @param label unique identifier for this action
|
||||||
|
*/
|
||||||
|
timeEnd(label: string): void;
|
||||||
|
|
||||||
|
// Non-standard functions which are de-facto standards.
|
||||||
|
// Similar to Node, we define these as no-ops for now.
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @deprecated Not implemented in GJS
|
||||||
|
*
|
||||||
|
* @param _label unique identifier for this action, pass to
|
||||||
|
* console.profileEnd to complete
|
||||||
|
*/
|
||||||
|
profile(_label: string): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @deprecated Not implemented in GJS
|
||||||
|
*
|
||||||
|
* @param _label unique identifier for this action
|
||||||
|
*/
|
||||||
|
profileEnd(_label: string): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @deprecated Not implemented in GJS
|
||||||
|
*
|
||||||
|
* @param _label unique identifier for this action
|
||||||
|
*/
|
||||||
|
timeStamp(_label: string): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface TextDecodeOptions {
|
||||||
|
// As of Gjs 1.73.2 stream mode is not supported yet.
|
||||||
|
// stream?: boolean
|
||||||
|
}
|
||||||
|
|
||||||
|
interface TextDecoderOptions {
|
||||||
|
/** Indicates whether the error mode is fatal. */
|
||||||
|
fatal?: boolean;
|
||||||
|
/** Indicates whether whether the byte order mark is ignored. */
|
||||||
|
ignoreBOM?: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The TextDecoder interface represents a decoder for a specific text encoding.
|
||||||
|
* It takes a stream of bytes as input and emits a stream of code points.
|
||||||
|
*
|
||||||
|
* @version Gjs 1.69.2
|
||||||
|
*/
|
||||||
|
interface TextDecoder {
|
||||||
|
/** A string containing the name of the decoder, that is a string describing the method the TextDecoder will use. */
|
||||||
|
readonly encoding: TextDecoderEncoding;
|
||||||
|
/** A Boolean indicating whether the error mode is fatal. */
|
||||||
|
readonly fatal: boolean;
|
||||||
|
/** A Boolean indicating whether the byte order mark is ignored. */
|
||||||
|
readonly ignoreBOM: boolean;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns a string containing the text decoded with the method of the specific TextDecoder object.
|
||||||
|
*
|
||||||
|
* If the error mode is "fatal" and the encoder method encounter an error it WILL THROW a TypeError.
|
||||||
|
*
|
||||||
|
* @param input Buffer containing the text to decode
|
||||||
|
* @param options Object defining the decode options
|
||||||
|
*/
|
||||||
|
decode(input?: ArrayBufferView | ArrayBuffer, options?: TextDecodeOptions): string;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface TextEncoderEncodeIntoResult {
|
||||||
|
read?: number;
|
||||||
|
written?: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* TextEncoder takes a stream of code points as input and emits a stream of bytes.
|
||||||
|
*
|
||||||
|
* @version Gjs 1.69.2
|
||||||
|
*/
|
||||||
|
interface TextEncoder {
|
||||||
|
readonly encoding: 'utf-8';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Takes a string as input, and returns a buffer containing the text given in parameters encoded with the UTF-8 method.
|
||||||
|
*
|
||||||
|
* @param input Text to encode.
|
||||||
|
*/
|
||||||
|
encode(input?: string): Uint8Array;
|
||||||
|
/**
|
||||||
|
* Takes a string to encode and a destination Uint8Array to put resulting UTF-8 encoded text into,
|
||||||
|
* and returns a dictionary object indicating the progress of the encoding.
|
||||||
|
*
|
||||||
|
* This is potentially more performant than the older encode() method.
|
||||||
|
*
|
||||||
|
* @param source Text to encode.
|
||||||
|
* @param destination Buffer where to place the resulting UTF-8 encoded text into.
|
||||||
|
*/
|
||||||
|
encodeInto(source: string, destination: Uint8Array): TextEncoderEncodeIntoResult;
|
||||||
|
}
|
||||||
|
|
||||||
|
const console: Console;
|
||||||
|
|
||||||
|
const TextDecoder: {
|
||||||
|
prototype: TextDecoder;
|
||||||
|
new (label?: TextDecoderEncoding, options?: TextDecoderOptions): TextDecoder;
|
||||||
|
};
|
||||||
|
|
||||||
|
const TextEncoder: {
|
||||||
|
prototype: TextEncoder;
|
||||||
|
new (): TextEncoder;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
export {};
|
65
@girs/fontconfig-2.0.d.ts
vendored
Normal file
65
@girs/fontconfig-2.0.d.ts
vendored
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
/// <reference path="./gobject-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://fontconfig?version=2.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
export namespace fontconfig {
|
||||||
|
/**
|
||||||
|
* fontconfig-2.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
function init(): void;
|
||||||
|
class Pattern {
|
||||||
|
static $gtype: GObject.GType<Pattern>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class CharSet {
|
||||||
|
static $gtype: GObject.GType<CharSet>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Config {
|
||||||
|
static $gtype: GObject.GType<Config>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 fontconfig;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://fontconfig' {
|
||||||
|
import Fontconfig20 from 'gi://fontconfig?version=2.0';
|
||||||
|
export default Fontconfig20;
|
||||||
|
}
|
||||||
|
// END
|
65
@girs/freetype2-2.0.d.ts
vendored
Normal file
65
@girs/freetype2-2.0.d.ts
vendored
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
/// <reference path="./gobject-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://freetype2?version=2.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
export namespace freetype2 {
|
||||||
|
/**
|
||||||
|
* freetype2-2.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
class Bitmap {
|
||||||
|
static $gtype: GObject.GType<Bitmap>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Face {
|
||||||
|
static $gtype: GObject.GType<Face>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Library {
|
||||||
|
static $gtype: GObject.GType<Library>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type Int32 = number;
|
||||||
|
/**
|
||||||
|
* 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 freetype2;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://freetype2' {
|
||||||
|
import Freetype220 from 'gi://freetype2?version=2.0';
|
||||||
|
export default Freetype220;
|
||||||
|
}
|
||||||
|
// END
|
405
@girs/gdesktopenums-3.0.d.ts
vendored
Normal file
405
@girs/gdesktopenums-3.0.d.ts
vendored
Normal file
|
@ -0,0 +1,405 @@
|
||||||
|
/// <reference path="./gobject-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://GDesktopEnums?version=3.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
export namespace GDesktopEnums {
|
||||||
|
/**
|
||||||
|
* GDesktopEnums-3.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
export namespace AccentColor {
|
||||||
|
export const $gtype: GObject.GType<AccentColor>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum AccentColor {
|
||||||
|
BLUE,
|
||||||
|
TEAL,
|
||||||
|
GREEN,
|
||||||
|
YELLOW,
|
||||||
|
ORANGE,
|
||||||
|
RED,
|
||||||
|
PINK,
|
||||||
|
PURPLE,
|
||||||
|
SLATE,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace BackgroundShading {
|
||||||
|
export const $gtype: GObject.GType<BackgroundShading>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum BackgroundShading {
|
||||||
|
SOLID,
|
||||||
|
VERTICAL,
|
||||||
|
HORIZONTAL,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace BackgroundStyle {
|
||||||
|
export const $gtype: GObject.GType<BackgroundStyle>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum BackgroundStyle {
|
||||||
|
NONE,
|
||||||
|
WALLPAPER,
|
||||||
|
CENTERED,
|
||||||
|
SCALED,
|
||||||
|
STRETCHED,
|
||||||
|
ZOOM,
|
||||||
|
SPANNED,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace ClockFormat {
|
||||||
|
export const $gtype: GObject.GType<ClockFormat>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum ClockFormat {
|
||||||
|
'24H',
|
||||||
|
'12H',
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace ColorScheme {
|
||||||
|
export const $gtype: GObject.GType<ColorScheme>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum ColorScheme {
|
||||||
|
DEFAULT,
|
||||||
|
PREFER_DARK,
|
||||||
|
PREFER_LIGHT,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace DeviceSendEvents {
|
||||||
|
export const $gtype: GObject.GType<DeviceSendEvents>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum DeviceSendEvents {
|
||||||
|
ENABLED,
|
||||||
|
DISABLED,
|
||||||
|
DISABLED_ON_EXTERNAL_MOUSE,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace FocusMode {
|
||||||
|
export const $gtype: GObject.GType<FocusMode>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum FocusMode {
|
||||||
|
CLICK,
|
||||||
|
SLOPPY,
|
||||||
|
MOUSE,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace FocusNewWindows {
|
||||||
|
export const $gtype: GObject.GType<FocusNewWindows>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum FocusNewWindows {
|
||||||
|
SMART,
|
||||||
|
STRICT,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace FontAntialiasingMode {
|
||||||
|
export const $gtype: GObject.GType<FontAntialiasingMode>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum FontAntialiasingMode {
|
||||||
|
NONE,
|
||||||
|
GRAYSCALE,
|
||||||
|
RGBA,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace FontHinting {
|
||||||
|
export const $gtype: GObject.GType<FontHinting>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum FontHinting {
|
||||||
|
NONE,
|
||||||
|
SLIGHT,
|
||||||
|
MEDIUM,
|
||||||
|
FULL,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace FontRendering {
|
||||||
|
export const $gtype: GObject.GType<FontRendering>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum FontRendering {
|
||||||
|
AUTOMATIC,
|
||||||
|
MANUAL,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace FontRgbaOrder {
|
||||||
|
export const $gtype: GObject.GType<FontRgbaOrder>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum FontRgbaOrder {
|
||||||
|
RGBA,
|
||||||
|
RGB,
|
||||||
|
BGR,
|
||||||
|
VRGB,
|
||||||
|
VBGR,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace LocationAccuracyLevel {
|
||||||
|
export const $gtype: GObject.GType<LocationAccuracyLevel>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum LocationAccuracyLevel {
|
||||||
|
COUNTRY,
|
||||||
|
CITY,
|
||||||
|
NEIGHBORHOOD,
|
||||||
|
STREET,
|
||||||
|
EXACT,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace MagnifierCaretTrackingMode {
|
||||||
|
export const $gtype: GObject.GType<MagnifierCaretTrackingMode>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum MagnifierCaretTrackingMode {
|
||||||
|
NONE,
|
||||||
|
CENTERED,
|
||||||
|
PROPORTIONAL,
|
||||||
|
PUSH,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace MagnifierFocusTrackingMode {
|
||||||
|
export const $gtype: GObject.GType<MagnifierFocusTrackingMode>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum MagnifierFocusTrackingMode {
|
||||||
|
NONE,
|
||||||
|
CENTERED,
|
||||||
|
PROPORTIONAL,
|
||||||
|
PUSH,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace MagnifierMouseTrackingMode {
|
||||||
|
export const $gtype: GObject.GType<MagnifierMouseTrackingMode>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum MagnifierMouseTrackingMode {
|
||||||
|
NONE,
|
||||||
|
CENTERED,
|
||||||
|
PROPORTIONAL,
|
||||||
|
PUSH,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace MagnifierScreenPosition {
|
||||||
|
export const $gtype: GObject.GType<MagnifierScreenPosition>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum MagnifierScreenPosition {
|
||||||
|
NONE,
|
||||||
|
FULL_SCREEN,
|
||||||
|
TOP_HALF,
|
||||||
|
BOTTOM_HALF,
|
||||||
|
LEFT_HALF,
|
||||||
|
RIGHT_HALF,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace MouseDwellDirection {
|
||||||
|
export const $gtype: GObject.GType<MouseDwellDirection>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum MouseDwellDirection {
|
||||||
|
LEFT,
|
||||||
|
RIGHT,
|
||||||
|
UP,
|
||||||
|
DOWN,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace MouseDwellMode {
|
||||||
|
export const $gtype: GObject.GType<MouseDwellMode>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum MouseDwellMode {
|
||||||
|
WINDOW,
|
||||||
|
GESTURE,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace PadButtonAction {
|
||||||
|
export const $gtype: GObject.GType<PadButtonAction>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum PadButtonAction {
|
||||||
|
NONE,
|
||||||
|
HELP,
|
||||||
|
SWITCH_MONITOR,
|
||||||
|
KEYBINDING,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace PointerAccelProfile {
|
||||||
|
export const $gtype: GObject.GType<PointerAccelProfile>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum PointerAccelProfile {
|
||||||
|
DEFAULT,
|
||||||
|
FLAT,
|
||||||
|
ADAPTIVE,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace PointingStickScrollMethod {
|
||||||
|
export const $gtype: GObject.GType<PointingStickScrollMethod>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum PointingStickScrollMethod {
|
||||||
|
DEFAULT,
|
||||||
|
NONE,
|
||||||
|
ON_BUTTON_DOWN,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace ProxyMode {
|
||||||
|
export const $gtype: GObject.GType<ProxyMode>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum ProxyMode {
|
||||||
|
NONE,
|
||||||
|
MANUAL,
|
||||||
|
AUTO,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace ScreensaverMode {
|
||||||
|
export const $gtype: GObject.GType<ScreensaverMode>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum ScreensaverMode {
|
||||||
|
BLANK_ONLY,
|
||||||
|
RANDOM,
|
||||||
|
SINGLE,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace StylusButtonAction {
|
||||||
|
export const $gtype: GObject.GType<StylusButtonAction>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum StylusButtonAction {
|
||||||
|
DEFAULT,
|
||||||
|
MIDDLE,
|
||||||
|
RIGHT,
|
||||||
|
BACK,
|
||||||
|
FORWARD,
|
||||||
|
SWITCH_MONITOR,
|
||||||
|
KEYBINDING,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace TabletMapping {
|
||||||
|
export const $gtype: GObject.GType<TabletMapping>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum TabletMapping {
|
||||||
|
ABSOLUTE,
|
||||||
|
RELATIVE,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace TitlebarAction {
|
||||||
|
export const $gtype: GObject.GType<TitlebarAction>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum TitlebarAction {
|
||||||
|
TOGGLE_SHADE,
|
||||||
|
TOGGLE_MAXIMIZE,
|
||||||
|
TOGGLE_MAXIMIZE_HORIZONTALLY,
|
||||||
|
TOGGLE_MAXIMIZE_VERTICALLY,
|
||||||
|
MINIMIZE,
|
||||||
|
NONE,
|
||||||
|
LOWER,
|
||||||
|
MENU,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace ToolbarIconSize {
|
||||||
|
export const $gtype: GObject.GType<ToolbarIconSize>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum ToolbarIconSize {
|
||||||
|
SMALL,
|
||||||
|
LARGE,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace ToolbarStyle {
|
||||||
|
export const $gtype: GObject.GType<ToolbarStyle>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum ToolbarStyle {
|
||||||
|
BOTH,
|
||||||
|
BOTH_HORIZ,
|
||||||
|
ICONS,
|
||||||
|
TEXT,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace TouchpadClickMethod {
|
||||||
|
export const $gtype: GObject.GType<TouchpadClickMethod>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum TouchpadClickMethod {
|
||||||
|
DEFAULT,
|
||||||
|
NONE,
|
||||||
|
AREAS,
|
||||||
|
FINGERS,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace TouchpadHandedness {
|
||||||
|
export const $gtype: GObject.GType<TouchpadHandedness>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum TouchpadHandedness {
|
||||||
|
RIGHT,
|
||||||
|
LEFT,
|
||||||
|
MOUSE,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace TouchpadTapButtonMap {
|
||||||
|
export const $gtype: GObject.GType<TouchpadTapButtonMap>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum TouchpadTapButtonMap {
|
||||||
|
DEFAULT,
|
||||||
|
LRM,
|
||||||
|
LMR,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace UsbProtection {
|
||||||
|
export const $gtype: GObject.GType<UsbProtection>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum UsbProtection {
|
||||||
|
LOCKSCREEN,
|
||||||
|
ALWAYS,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace VisualBellType {
|
||||||
|
export const $gtype: GObject.GType<VisualBellType>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum VisualBellType {
|
||||||
|
FULLSCREEN_FLASH,
|
||||||
|
FRAME_FLASH,
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 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 GDesktopEnums;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://GDesktopEnums' {
|
||||||
|
import GDesktopEnums30 from 'gi://GDesktopEnums?version=3.0';
|
||||||
|
export default GDesktopEnums30;
|
||||||
|
}
|
||||||
|
// END
|
13172
@girs/gdk-3.0.d.ts
vendored
Normal file
13172
@girs/gdk-3.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
17058
@girs/gdk-4.0.d.ts
vendored
Normal file
17058
@girs/gdk-4.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
2795
@girs/gdkpixbuf-2.0.d.ts
vendored
Normal file
2795
@girs/gdkpixbuf-2.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
264
@girs/gdkpixdata-2.0.d.ts
vendored
Normal file
264
@girs/gdkpixdata-2.0.d.ts
vendored
Normal file
|
@ -0,0 +1,264 @@
|
||||||
|
/// <reference path="./gdkpixbuf-2.0.d.ts" />
|
||||||
|
/// <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://GdkPixdata?version=2.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GdkPixbuf from 'gi://GdkPixbuf?version=2.0';
|
||||||
|
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 GdkPixdata {
|
||||||
|
/**
|
||||||
|
* GdkPixdata-2.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Magic number for #GdkPixdata structures.
|
||||||
|
*/
|
||||||
|
const PIXBUF_MAGIC_NUMBER: number;
|
||||||
|
/**
|
||||||
|
* The length of a #GdkPixdata structure without the `pixel_data` pointer.
|
||||||
|
*/
|
||||||
|
const PIXDATA_HEADER_LENGTH: number;
|
||||||
|
/**
|
||||||
|
* Converts a `GdkPixdata` to a `GdkPixbuf`.
|
||||||
|
*
|
||||||
|
* If `copy_pixels` is `TRUE` or if the pixel data is run-length-encoded,
|
||||||
|
* the pixel data is copied into newly-allocated memory; otherwise it is
|
||||||
|
* reused.
|
||||||
|
* @param pixdata a #GdkPixdata to convert into a `GdkPixbuf`.
|
||||||
|
* @param copy_pixels whether to copy raw pixel data; run-length encoded pixel data is always copied.
|
||||||
|
* @returns a new pixbuf
|
||||||
|
*/
|
||||||
|
function pixbuf_from_pixdata(pixdata: Pixdata, copy_pixels: boolean): GdkPixbuf.Pixbuf;
|
||||||
|
/**
|
||||||
|
* An enumeration which is used by gdk_pixdata_to_csource() to
|
||||||
|
* determine the form of C source to be generated. The three values
|
||||||
|
* `GDK_PIXDATA_DUMP_PIXDATA_STREAM,` `GDK_PIXDATA_DUMP_PIXDATA_STRUCT`
|
||||||
|
* and `GDK_PIXDATA_DUMP_MACROS` are mutually exclusive, as are
|
||||||
|
* `GDK_PIXBUF_DUMP_GTYPES` and `GDK_PIXBUF_DUMP_CTYPES`. The remaining
|
||||||
|
* elements are optional flags that can be freely added.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* An enumeration which is used by gdk_pixdata_to_csource() to
|
||||||
|
* determine the form of C source to be generated. The three values
|
||||||
|
* `GDK_PIXDATA_DUMP_PIXDATA_STREAM,` `GDK_PIXDATA_DUMP_PIXDATA_STRUCT`
|
||||||
|
* and `GDK_PIXDATA_DUMP_MACROS` are mutually exclusive, as are
|
||||||
|
* `GDK_PIXBUF_DUMP_GTYPES` and `GDK_PIXBUF_DUMP_CTYPES`. The remaining
|
||||||
|
* elements are optional flags that can be freely added.
|
||||||
|
*/
|
||||||
|
export namespace PixdataDumpType {
|
||||||
|
export const $gtype: GObject.GType<PixdataDumpType>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum PixdataDumpType {
|
||||||
|
/**
|
||||||
|
* Generate pixbuf data stream (a single
|
||||||
|
* string containing a serialized #GdkPixdata structure in network byte
|
||||||
|
* order).
|
||||||
|
*/
|
||||||
|
PIXDATA_STREAM,
|
||||||
|
/**
|
||||||
|
* Generate #GdkPixdata structure (needs
|
||||||
|
* the #GdkPixdata structure definition from gdk-pixdata.h).
|
||||||
|
*/
|
||||||
|
PIXDATA_STRUCT,
|
||||||
|
/**
|
||||||
|
* Generate <function>*_ROWSTRIDE</function>,
|
||||||
|
* <function>*_WIDTH</function>, <function>*_HEIGHT</function>,
|
||||||
|
* <function>*_BYTES_PER_PIXEL</function> and
|
||||||
|
* <function>*_RLE_PIXEL_DATA</function> or <function>*_PIXEL_DATA</function>
|
||||||
|
* macro definitions for the image.
|
||||||
|
*/
|
||||||
|
MACROS,
|
||||||
|
/**
|
||||||
|
* Generate GLib data types instead of
|
||||||
|
* standard C data types.
|
||||||
|
*/
|
||||||
|
GTYPES,
|
||||||
|
/**
|
||||||
|
* Generate standard C data types instead of
|
||||||
|
* GLib data types.
|
||||||
|
*/
|
||||||
|
CTYPES,
|
||||||
|
/**
|
||||||
|
* Generate static symbols.
|
||||||
|
*/
|
||||||
|
STATIC,
|
||||||
|
/**
|
||||||
|
* Generate const symbols.
|
||||||
|
*/
|
||||||
|
CONST,
|
||||||
|
/**
|
||||||
|
* Provide a <function>*_RUN_LENGTH_DECODE(image_buf, rle_data, size, bpp)</function>
|
||||||
|
* macro definition to decode run-length encoded image data.
|
||||||
|
*/
|
||||||
|
RLE_DECODER,
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* An enumeration containing three sets of flags for a #GdkPixdata struct:
|
||||||
|
* one for the used colorspace, one for the width of the samples and one
|
||||||
|
* for the encoding of the pixel data.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* An enumeration containing three sets of flags for a #GdkPixdata struct:
|
||||||
|
* one for the used colorspace, one for the width of the samples and one
|
||||||
|
* for the encoding of the pixel data.
|
||||||
|
*/
|
||||||
|
export namespace PixdataType {
|
||||||
|
export const $gtype: GObject.GType<PixdataType>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum PixdataType {
|
||||||
|
/**
|
||||||
|
* each pixel has red, green and blue samples.
|
||||||
|
*/
|
||||||
|
COLOR_TYPE_RGB,
|
||||||
|
/**
|
||||||
|
* each pixel has red, green and blue samples
|
||||||
|
* and an alpha value.
|
||||||
|
*/
|
||||||
|
COLOR_TYPE_RGBA,
|
||||||
|
/**
|
||||||
|
* mask for the colortype flags of the enum.
|
||||||
|
*/
|
||||||
|
COLOR_TYPE_MASK,
|
||||||
|
/**
|
||||||
|
* each sample has 8 bits.
|
||||||
|
*/
|
||||||
|
SAMPLE_WIDTH_8,
|
||||||
|
/**
|
||||||
|
* mask for the sample width flags of the enum.
|
||||||
|
*/
|
||||||
|
SAMPLE_WIDTH_MASK,
|
||||||
|
/**
|
||||||
|
* the pixel data is in raw form.
|
||||||
|
*/
|
||||||
|
ENCODING_RAW,
|
||||||
|
/**
|
||||||
|
* the pixel data is run-length encoded. Runs may
|
||||||
|
* be up to 127 bytes long; their length is stored in a single byte
|
||||||
|
* preceding the pixel data for the run. If a run is constant, its length
|
||||||
|
* byte has the high bit set and the pixel data consists of a single pixel
|
||||||
|
* which must be repeated.
|
||||||
|
*/
|
||||||
|
ENCODING_RLE,
|
||||||
|
/**
|
||||||
|
* mask for the encoding flags of the enum.
|
||||||
|
*/
|
||||||
|
ENCODING_MASK,
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* A pixel buffer suitable for serialization and streaming.
|
||||||
|
*
|
||||||
|
* Using `GdkPixdata`, images can be compiled into an application,
|
||||||
|
* making it unnecessary to refer to external image files at runtime.
|
||||||
|
*
|
||||||
|
* `GdkPixbuf` includes a utility named `gdk-pixbuf-csource`, which
|
||||||
|
* can be used to convert image files into `GdkPixdata` structures suitable
|
||||||
|
* for inclusion in C sources. To convert the `GdkPixdata` structures back
|
||||||
|
* into a `GdkPixbuf`, use `gdk_pixbuf_from_pixdata()`.
|
||||||
|
*/
|
||||||
|
class Pixdata {
|
||||||
|
static $gtype: GObject.GType<Pixdata>;
|
||||||
|
|
||||||
|
// Fields
|
||||||
|
|
||||||
|
magic: number;
|
||||||
|
length: number;
|
||||||
|
pixdata_type: number;
|
||||||
|
rowstride: number;
|
||||||
|
width: number;
|
||||||
|
height: number;
|
||||||
|
pixel_data: Uint8Array;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
properties?: Partial<{
|
||||||
|
magic: number;
|
||||||
|
length: number;
|
||||||
|
pixdata_type: number;
|
||||||
|
rowstride: number;
|
||||||
|
width: number;
|
||||||
|
height: number;
|
||||||
|
pixel_data: Uint8Array;
|
||||||
|
}>,
|
||||||
|
);
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Deserializes (reconstruct) a #GdkPixdata structure from a byte stream.
|
||||||
|
*
|
||||||
|
* The byte stream consists of a straightforward writeout of the
|
||||||
|
* `GdkPixdata` fields in network byte order, plus the `pixel_data`
|
||||||
|
* bytes the structure points to.
|
||||||
|
*
|
||||||
|
* The `pixdata` contents are reconstructed byte by byte and are checked
|
||||||
|
* for validity.
|
||||||
|
*
|
||||||
|
* This function may fail with `GDK_PIXBUF_ERROR_CORRUPT_IMAGE`
|
||||||
|
* or `GDK_PIXBUF_ERROR_UNKNOWN_TYPE`.
|
||||||
|
* @param stream stream of bytes containing a serialized #GdkPixdata structure.
|
||||||
|
* @returns Upon successful deserialization `TRUE` is returned, `FALSE` otherwise.
|
||||||
|
*/
|
||||||
|
deserialize(stream: Uint8Array | string): boolean;
|
||||||
|
/**
|
||||||
|
* Serializes a #GdkPixdata structure into a byte stream.
|
||||||
|
* The byte stream consists of a straightforward writeout of the
|
||||||
|
* #GdkPixdata fields in network byte order, plus the `pixel_data`
|
||||||
|
* bytes the structure points to.
|
||||||
|
* @returns A newly-allocated string containing the serialized #GdkPixdata structure.
|
||||||
|
*/
|
||||||
|
serialize(): Uint8Array;
|
||||||
|
/**
|
||||||
|
* Generates C source code suitable for compiling images directly
|
||||||
|
* into programs.
|
||||||
|
*
|
||||||
|
* GdkPixbuf ships with a program called `gdk-pixbuf-csource`, which offers
|
||||||
|
* a command line interface to this function.
|
||||||
|
* @param name used for naming generated data structures or macros
|
||||||
|
* @param dump_type the kind of C source to be generated
|
||||||
|
* @returns a newly-allocated string buffer containing the C source form of `pixdata`.
|
||||||
|
*/
|
||||||
|
to_csource(name: string, dump_type: PixdataDumpType | null): GLib.String;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 GdkPixdata;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://GdkPixdata' {
|
||||||
|
import GdkPixdata20 from 'gi://GdkPixdata?version=2.0';
|
||||||
|
export default GdkPixdata20;
|
||||||
|
}
|
||||||
|
// END
|
1352
@girs/gdkwayland-4.0.d.ts
vendored
Normal file
1352
@girs/gdkwayland-4.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
892
@girs/gdkx11-3.0.d.ts
vendored
Normal file
892
@girs/gdkx11-3.0.d.ts
vendored
Normal file
|
@ -0,0 +1,892 @@
|
||||||
|
/// <reference path="./xlib-2.0.d.ts" />
|
||||||
|
/// <reference path="./cairo-1.0.d.ts" />
|
||||||
|
/// <reference path="./cairo.d.ts" />
|
||||||
|
/// <reference path="./gobject-2.0.d.ts" />
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./pango-1.0.d.ts" />
|
||||||
|
/// <reference path="./harfbuzz-0.0.d.ts" />
|
||||||
|
/// <reference path="./freetype2-2.0.d.ts" />
|
||||||
|
/// <reference path="./gio-2.0.d.ts" />
|
||||||
|
/// <reference path="./gmodule-2.0.d.ts" />
|
||||||
|
/// <reference path="./gdkpixbuf-2.0.d.ts" />
|
||||||
|
/// <reference path="./gdk-3.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://GdkX11?version=3.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type xlib from 'gi://xlib?version=2.0';
|
||||||
|
import type cairo from 'cairo';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type Pango from 'gi://Pango?version=1.0';
|
||||||
|
import type HarfBuzz from 'gi://HarfBuzz?version=0.0';
|
||||||
|
import type freetype2 from 'gi://freetype2?version=2.0';
|
||||||
|
import type Gio from 'gi://Gio?version=2.0';
|
||||||
|
import type GModule from 'gi://GModule?version=2.0';
|
||||||
|
import type GdkPixbuf from 'gi://GdkPixbuf?version=2.0';
|
||||||
|
import type Gdk from 'gi://Gdk?version=3.0';
|
||||||
|
|
||||||
|
export namespace GdkX11 {
|
||||||
|
/**
|
||||||
|
* GdkX11-3.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Converts from a #GdkAtom to the X atom for the default GDK display
|
||||||
|
* with the same string value.
|
||||||
|
* @param atom A #GdkAtom
|
||||||
|
* @returns the X atom corresponding to @atom.
|
||||||
|
*/
|
||||||
|
function x11_atom_to_xatom(atom: Gdk.Atom): xlib.Atom;
|
||||||
|
/**
|
||||||
|
* Converts from a #GdkAtom to the X atom for a #GdkDisplay
|
||||||
|
* with the same string value. The special value %GDK_NONE
|
||||||
|
* is converted to %None.
|
||||||
|
* @param display A #GdkDisplay
|
||||||
|
* @param atom A #GdkAtom, or %GDK_NONE
|
||||||
|
* @returns the X atom corresponding to @atom, or %None
|
||||||
|
*/
|
||||||
|
function x11_atom_to_xatom_for_display(display: X11Display, atom: Gdk.Atom): xlib.Atom;
|
||||||
|
/**
|
||||||
|
* Returns the device ID as seen by XInput2.
|
||||||
|
*
|
||||||
|
* > If gdk_disable_multidevice() has been called, this function
|
||||||
|
* > will respectively return 2/3 for the core pointer and keyboard,
|
||||||
|
* > (matching the IDs for the Virtual Core Pointer and Keyboard in
|
||||||
|
* > XInput 2), but calling this function on any slave devices (i.e.
|
||||||
|
* > those managed via XInput 1.x), will return 0.
|
||||||
|
* @param device a #GdkDevice
|
||||||
|
* @returns the XInput2 device ID.
|
||||||
|
*/
|
||||||
|
function x11_device_get_id(device: X11DeviceCore): number;
|
||||||
|
/**
|
||||||
|
* Returns the #GdkDevice that wraps the given device ID.
|
||||||
|
* @param device_manager a #GdkDeviceManager
|
||||||
|
* @param device_id a device ID, as understood by the XInput2 protocol
|
||||||
|
* @returns The #GdkDevice wrapping the device ID, or %NULL if the given ID doesn’t currently represent a device.
|
||||||
|
*/
|
||||||
|
function x11_device_manager_lookup(
|
||||||
|
device_manager: X11DeviceManagerCore,
|
||||||
|
device_id: number,
|
||||||
|
): X11DeviceCore | null;
|
||||||
|
/**
|
||||||
|
* Frees the data returned from gdk_x11_display_string_to_compound_text().
|
||||||
|
* @param ctext The pointer stored in @ctext from a call to gdk_x11_display_string_to_compound_text().
|
||||||
|
*/
|
||||||
|
function x11_free_compound_text(ctext: number): void;
|
||||||
|
/**
|
||||||
|
* Frees the array of strings created by
|
||||||
|
* gdk_x11_display_text_property_to_text_list().
|
||||||
|
* @param list the value stored in the @list parameter by a call to gdk_x11_display_text_property_to_text_list().
|
||||||
|
*/
|
||||||
|
function x11_free_text_list(list: string): void;
|
||||||
|
/**
|
||||||
|
* Gets the root window of the default screen
|
||||||
|
* (see gdk_x11_get_default_screen()).
|
||||||
|
* @returns an Xlib Window.
|
||||||
|
*/
|
||||||
|
function x11_get_default_root_xwindow(): xlib.Window;
|
||||||
|
/**
|
||||||
|
* Gets the default GTK+ screen number.
|
||||||
|
* @returns returns the screen number specified by the --display command line option or the DISPLAY environment variable when gdk_init() calls XOpenDisplay().
|
||||||
|
*/
|
||||||
|
function x11_get_default_screen(): number;
|
||||||
|
/**
|
||||||
|
* Gets the default GTK+ display.
|
||||||
|
* @returns the Xlib Display* for the display specified in the `--display` command line option or the `DISPLAY` environment variable.
|
||||||
|
*/
|
||||||
|
function x11_get_default_xdisplay(): xlib.Display;
|
||||||
|
/**
|
||||||
|
* Used with gdk_window_set_background_pattern() to inherit background from
|
||||||
|
* parent window. Useful for imitating transparency when compositing is not
|
||||||
|
* available. Otherwise behaves like a transparent pattern.
|
||||||
|
*/
|
||||||
|
function x11_get_parent_relative_pattern(): cairo.Pattern;
|
||||||
|
/**
|
||||||
|
* Routine to get the current X server time stamp.
|
||||||
|
* @param window a #GdkWindow, used for communication with the server. The window must have GDK_PROPERTY_CHANGE_MASK in its events mask or a hang will result.
|
||||||
|
* @returns the time stamp.
|
||||||
|
*/
|
||||||
|
function x11_get_server_time(window: X11Window): number;
|
||||||
|
/**
|
||||||
|
* Returns the X atom for GDK’s default display corresponding to `atom_name`.
|
||||||
|
* This function caches the result, so if called repeatedly it is much
|
||||||
|
* faster than XInternAtom(), which is a round trip to the server each time.
|
||||||
|
* @param atom_name a string
|
||||||
|
* @returns a X atom for GDK’s default display.
|
||||||
|
*/
|
||||||
|
function x11_get_xatom_by_name(atom_name: string): xlib.Atom;
|
||||||
|
/**
|
||||||
|
* Returns the X atom for a #GdkDisplay corresponding to `atom_name`.
|
||||||
|
* This function caches the result, so if called repeatedly it is much
|
||||||
|
* faster than XInternAtom(), which is a round trip to the server each time.
|
||||||
|
* @param display a #GdkDisplay
|
||||||
|
* @param atom_name a string
|
||||||
|
* @returns a X atom for a #GdkDisplay
|
||||||
|
*/
|
||||||
|
function x11_get_xatom_by_name_for_display(display: X11Display, atom_name: string): xlib.Atom;
|
||||||
|
/**
|
||||||
|
* Returns the name of an X atom for GDK’s default display. This
|
||||||
|
* function is meant mainly for debugging, so for convenience, unlike
|
||||||
|
* XAtomName() and gdk_atom_name(), the result
|
||||||
|
* doesn’t need to be freed. Also, this function will never return %NULL,
|
||||||
|
* even if `xatom` is invalid.
|
||||||
|
* @param xatom an X atom for GDK’s default display
|
||||||
|
* @returns name of the X atom; this string is owned by GTK+, so it shouldn’t be modifed or freed.
|
||||||
|
*/
|
||||||
|
function x11_get_xatom_name(xatom: xlib.Atom): string;
|
||||||
|
/**
|
||||||
|
* Returns the name of an X atom for its display. This
|
||||||
|
* function is meant mainly for debugging, so for convenience, unlike
|
||||||
|
* XAtomName() and gdk_atom_name(), the result doesn’t need to
|
||||||
|
* be freed.
|
||||||
|
* @param display the #GdkDisplay where @xatom is defined
|
||||||
|
* @param xatom an X atom
|
||||||
|
* @returns name of the X atom; this string is owned by GDK, so it shouldn’t be modifed or freed.
|
||||||
|
*/
|
||||||
|
function x11_get_xatom_name_for_display(display: X11Display, xatom: xlib.Atom): string;
|
||||||
|
/**
|
||||||
|
* Call gdk_x11_display_grab() on the default display.
|
||||||
|
* To ungrab the server again, use gdk_x11_ungrab_server().
|
||||||
|
*
|
||||||
|
* gdk_x11_grab_server()/gdk_x11_ungrab_server() calls can be nested.
|
||||||
|
*/
|
||||||
|
function x11_grab_server(): void;
|
||||||
|
/**
|
||||||
|
* Find the #GdkDisplay corresponding to `xdisplay,` if any exists.
|
||||||
|
* @param xdisplay a pointer to an X Display
|
||||||
|
* @returns the #GdkDisplay, if found, otherwise %NULL.
|
||||||
|
*/
|
||||||
|
function x11_lookup_xdisplay(xdisplay: xlib.Display): X11Display;
|
||||||
|
/**
|
||||||
|
* Registers interest in receiving extension events with type codes
|
||||||
|
* between `event_base` and `event_base + n_events - 1`.
|
||||||
|
* The registered events must have the window field in the same place
|
||||||
|
* as core X events (this is not the case for e.g. XKB extension events).
|
||||||
|
*
|
||||||
|
* If an event type is registered, events of this type will go through
|
||||||
|
* global and window-specific filters (see gdk_window_add_filter()).
|
||||||
|
* Unregistered events will only go through global filters.
|
||||||
|
* GDK may register the events of some X extensions on its own.
|
||||||
|
*
|
||||||
|
* This function should only be needed in unusual circumstances, e.g.
|
||||||
|
* when filtering XInput extension events on the root window.
|
||||||
|
* @param display a #GdkDisplay
|
||||||
|
* @param event_base first event type code to register
|
||||||
|
* @param n_events number of event type codes to register
|
||||||
|
*/
|
||||||
|
function x11_register_standard_event_type(display: X11Display, event_base: number, n_events: number): void;
|
||||||
|
/**
|
||||||
|
* Sets the `SM_CLIENT_ID` property on the application’s leader window so that
|
||||||
|
* the window manager can save the application’s state using the X11R6 ICCCM
|
||||||
|
* session management protocol.
|
||||||
|
*
|
||||||
|
* See the X Session Management Library documentation for more information on
|
||||||
|
* session management and the Inter-Client Communication Conventions Manual
|
||||||
|
* @param sm_client_id the client id assigned by the session manager when the connection was opened, or %NULL to remove the property.
|
||||||
|
*/
|
||||||
|
function x11_set_sm_client_id(sm_client_id?: string | null): void;
|
||||||
|
/**
|
||||||
|
* Ungrab the default display after it has been grabbed with
|
||||||
|
* gdk_x11_grab_server().
|
||||||
|
*/
|
||||||
|
function x11_ungrab_server(): void;
|
||||||
|
/**
|
||||||
|
* Convert from an X atom for the default display to the corresponding
|
||||||
|
* #GdkAtom.
|
||||||
|
* @param xatom an X atom for the default GDK display
|
||||||
|
* @returns the corresponding G#dkAtom.
|
||||||
|
*/
|
||||||
|
function x11_xatom_to_atom(xatom: xlib.Atom): Gdk.Atom;
|
||||||
|
/**
|
||||||
|
* Convert from an X atom for a #GdkDisplay to the corresponding
|
||||||
|
* #GdkAtom.
|
||||||
|
* @param display A #GdkDisplay
|
||||||
|
* @param xatom an X atom
|
||||||
|
* @returns the corresponding #GdkAtom.
|
||||||
|
*/
|
||||||
|
function x11_xatom_to_atom_for_display(display: X11Display, xatom: xlib.Atom): Gdk.Atom;
|
||||||
|
namespace X11AppLaunchContext {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.AppLaunchContext.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11AppLaunchContext extends Gdk.AppLaunchContext {
|
||||||
|
static $gtype: GObject.GType<X11AppLaunchContext>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11AppLaunchContext.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11Cursor {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.Cursor.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11Cursor extends Gdk.Cursor {
|
||||||
|
static $gtype: GObject.GType<X11Cursor>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11Cursor.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the X cursor belonging to a #GdkCursor.
|
||||||
|
* @returns an Xlib Cursor.
|
||||||
|
*/
|
||||||
|
get_xcursor(): xlib.Cursor;
|
||||||
|
/**
|
||||||
|
* Returns the display of a #GdkCursor.
|
||||||
|
* @returns an Xlib Display*.
|
||||||
|
*/
|
||||||
|
get_xdisplay(): xlib.Display;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11DeviceCore {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.Device.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11DeviceCore extends Gdk.Device {
|
||||||
|
static $gtype: GObject.GType<X11DeviceCore>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11DeviceCore.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11DeviceManagerCore {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.DeviceManager.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11DeviceManagerCore extends Gdk.DeviceManager {
|
||||||
|
static $gtype: GObject.GType<X11DeviceManagerCore>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11DeviceManagerCore.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11DeviceManagerXI2 {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends X11DeviceManagerCore.ConstructorProps {
|
||||||
|
major: number;
|
||||||
|
minor: number;
|
||||||
|
opcode: number;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11DeviceManagerXI2 extends X11DeviceManagerCore {
|
||||||
|
static $gtype: GObject.GType<X11DeviceManagerXI2>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
get major(): number;
|
||||||
|
get minor(): number;
|
||||||
|
get opcode(): number;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11DeviceManagerXI2.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11DeviceXI2 {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.Device.ConstructorProps {
|
||||||
|
device_id: number;
|
||||||
|
deviceId: number;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11DeviceXI2 extends Gdk.Device {
|
||||||
|
static $gtype: GObject.GType<X11DeviceXI2>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
get device_id(): number;
|
||||||
|
get deviceId(): number;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11DeviceXI2.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11Display {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.Display.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11Display extends Gdk.Display {
|
||||||
|
static $gtype: GObject.GType<X11Display>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11Display.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieves the version of the GLX implementation.
|
||||||
|
* @param display a #GdkDisplay
|
||||||
|
*/
|
||||||
|
static get_glx_version(display: Gdk.Display): [boolean, number, number];
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Pops the error trap pushed by gdk_x11_display_error_trap_push().
|
||||||
|
* Will XSync() if necessary and will always block until
|
||||||
|
* the error is known to have occurred or not occurred,
|
||||||
|
* so the error code can be returned.
|
||||||
|
*
|
||||||
|
* If you don’t need to use the return value,
|
||||||
|
* gdk_x11_display_error_trap_pop_ignored() would be more efficient.
|
||||||
|
*
|
||||||
|
* See gdk_error_trap_pop() for the all-displays-at-once
|
||||||
|
* equivalent.
|
||||||
|
* @returns X error code or 0 on success
|
||||||
|
*/
|
||||||
|
error_trap_pop(): number;
|
||||||
|
/**
|
||||||
|
* Pops the error trap pushed by gdk_x11_display_error_trap_push().
|
||||||
|
* Does not block to see if an error occurred; merely records the
|
||||||
|
* range of requests to ignore errors for, and ignores those errors
|
||||||
|
* if they arrive asynchronously.
|
||||||
|
*
|
||||||
|
* See gdk_error_trap_pop_ignored() for the all-displays-at-once
|
||||||
|
* equivalent.
|
||||||
|
*/
|
||||||
|
error_trap_pop_ignored(): void;
|
||||||
|
/**
|
||||||
|
* Begins a range of X requests on `display` for which X error events
|
||||||
|
* will be ignored. Unignored errors (when no trap is pushed) will abort
|
||||||
|
* the application. Use gdk_x11_display_error_trap_pop() or
|
||||||
|
* gdk_x11_display_error_trap_pop_ignored()to lift a trap pushed
|
||||||
|
* with this function.
|
||||||
|
*
|
||||||
|
* See also gdk_error_trap_push() to push a trap on all displays.
|
||||||
|
*/
|
||||||
|
error_trap_push(): void;
|
||||||
|
/**
|
||||||
|
* Gets the startup notification ID for a display.
|
||||||
|
* @returns the startup notification ID for @display
|
||||||
|
*/
|
||||||
|
get_startup_notification_id(): string;
|
||||||
|
/**
|
||||||
|
* Returns the timestamp of the last user interaction on
|
||||||
|
* `display`. The timestamp is taken from events caused
|
||||||
|
* by user interaction such as key presses or pointer
|
||||||
|
* movements. See gdk_x11_window_set_user_time().
|
||||||
|
* @returns the timestamp of the last user interaction
|
||||||
|
*/
|
||||||
|
get_user_time(): number;
|
||||||
|
/**
|
||||||
|
* Returns the X display of a #GdkDisplay.
|
||||||
|
* @returns an X display
|
||||||
|
*/
|
||||||
|
get_xdisplay(): xlib.Display;
|
||||||
|
/**
|
||||||
|
* Call XGrabServer() on `display`.
|
||||||
|
* To ungrab the display again, use gdk_x11_display_ungrab().
|
||||||
|
*
|
||||||
|
* gdk_x11_display_grab()/gdk_x11_display_ungrab() calls can be nested.
|
||||||
|
*/
|
||||||
|
grab(): void;
|
||||||
|
/**
|
||||||
|
* Sets the cursor theme from which the images for cursor
|
||||||
|
* should be taken.
|
||||||
|
*
|
||||||
|
* If the windowing system supports it, existing cursors created
|
||||||
|
* with gdk_cursor_new(), gdk_cursor_new_for_display() and
|
||||||
|
* gdk_cursor_new_from_name() are updated to reflect the theme
|
||||||
|
* change. Custom cursors constructed with
|
||||||
|
* gdk_cursor_new_from_pixbuf() will have to be handled
|
||||||
|
* by the application (GTK+ applications can learn about
|
||||||
|
* cursor theme changes by listening for change notification
|
||||||
|
* for the corresponding #GtkSetting).
|
||||||
|
* @param theme the name of the cursor theme to use, or %NULL to unset a previously set value
|
||||||
|
* @param size the cursor size to use, or 0 to keep the previous size
|
||||||
|
*/
|
||||||
|
set_cursor_theme(theme: string | null, size: number): void;
|
||||||
|
/**
|
||||||
|
* Sets the startup notification ID for a display.
|
||||||
|
*
|
||||||
|
* This is usually taken from the value of the DESKTOP_STARTUP_ID
|
||||||
|
* environment variable, but in some cases (such as the application not
|
||||||
|
* being launched using exec()) it can come from other sources.
|
||||||
|
*
|
||||||
|
* If the ID contains the string "_TIME" then the portion following that
|
||||||
|
* string is taken to be the X11 timestamp of the event that triggered
|
||||||
|
* the application to be launched and the GDK current event time is set
|
||||||
|
* accordingly.
|
||||||
|
*
|
||||||
|
* The startup ID is also what is used to signal that the startup is
|
||||||
|
* complete (for example, when opening a window or when calling
|
||||||
|
* gdk_notify_startup_complete()).
|
||||||
|
* @param startup_id the startup notification ID (must be valid utf8)
|
||||||
|
*/
|
||||||
|
set_startup_notification_id(startup_id: string): void;
|
||||||
|
/**
|
||||||
|
* Forces a specific window scale for all windows on this display,
|
||||||
|
* instead of using the default or user configured scale. This
|
||||||
|
* is can be used to disable scaling support by setting `scale` to
|
||||||
|
* 1, or to programmatically set the window scale.
|
||||||
|
*
|
||||||
|
* Once the scale is set by this call it will not change in response
|
||||||
|
* to later user configuration changes.
|
||||||
|
* @param scale The new scale value
|
||||||
|
*/
|
||||||
|
set_window_scale(scale: number): void;
|
||||||
|
/**
|
||||||
|
* Convert a string from the encoding of the current
|
||||||
|
* locale into a form suitable for storing in a window property.
|
||||||
|
* @param str a nul-terminated string
|
||||||
|
* @returns 0 upon success, non-zero upon failure
|
||||||
|
*/
|
||||||
|
string_to_compound_text(str: string): [number, Gdk.Atom, number, Uint8Array];
|
||||||
|
/**
|
||||||
|
* Convert a text string from the encoding as it is stored
|
||||||
|
* in a property into an array of strings in the encoding of
|
||||||
|
* the current locale. (The elements of the array represent the
|
||||||
|
* nul-separated elements of the original text string.)
|
||||||
|
* @param encoding an atom representing the encoding. The most common values for this are STRING, or COMPOUND_TEXT. This is value used as the type for the property
|
||||||
|
* @param format the format of the property
|
||||||
|
* @param text The text data
|
||||||
|
* @param length The number of items to transform
|
||||||
|
* @param list location to store an array of strings in the encoding of the current locale. This array should be freed using gdk_free_text_list().
|
||||||
|
* @returns the number of strings stored in list, or 0, if the conversion failed
|
||||||
|
*/
|
||||||
|
text_property_to_text_list(
|
||||||
|
encoding: Gdk.Atom,
|
||||||
|
format: number,
|
||||||
|
text: number,
|
||||||
|
length: number,
|
||||||
|
list: string,
|
||||||
|
): number;
|
||||||
|
/**
|
||||||
|
* Ungrab `display` after it has been grabbed with
|
||||||
|
* gdk_x11_display_grab().
|
||||||
|
*/
|
||||||
|
ungrab(): void;
|
||||||
|
/**
|
||||||
|
* Converts from UTF-8 to compound text.
|
||||||
|
* @param str a UTF-8 string
|
||||||
|
* @returns %TRUE if the conversion succeeded, otherwise %FALSE
|
||||||
|
*/
|
||||||
|
utf8_to_compound_text(str: string): [boolean, Gdk.Atom, number, Uint8Array];
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11DisplayManager {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.DisplayManager.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11DisplayManager extends Gdk.DisplayManager {
|
||||||
|
static $gtype: GObject.GType<X11DisplayManager>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11DisplayManager.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11DragContext {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.DragContext.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11DragContext extends Gdk.DragContext {
|
||||||
|
static $gtype: GObject.GType<X11DragContext>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11DragContext.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11GLContext {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.GLContext.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11GLContext extends Gdk.GLContext {
|
||||||
|
static $gtype: GObject.GType<X11GLContext>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11GLContext.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11Keymap {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.Keymap.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11Keymap extends Gdk.Keymap {
|
||||||
|
static $gtype: GObject.GType<X11Keymap>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11Keymap.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Extracts the group from the state field sent in an X Key event.
|
||||||
|
* This is only needed for code processing raw X events, since #GdkEventKey
|
||||||
|
* directly includes an is_modifier field.
|
||||||
|
* @param state raw state returned from X
|
||||||
|
* @returns the index of the active keyboard group for the event
|
||||||
|
*/
|
||||||
|
get_group_for_state(state: number): number;
|
||||||
|
/**
|
||||||
|
* Determines whether a particular key code represents a key that
|
||||||
|
* is a modifier. That is, it’s a key that normally just affects
|
||||||
|
* the keyboard state and the behavior of other keys rather than
|
||||||
|
* producing a direct effect itself. This is only needed for code
|
||||||
|
* processing raw X events, since #GdkEventKey directly includes
|
||||||
|
* an is_modifier field.
|
||||||
|
* @param keycode the hardware keycode from a key event
|
||||||
|
* @returns %TRUE if the hardware keycode is a modifier key
|
||||||
|
*/
|
||||||
|
key_is_modifier(keycode: number): boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11Monitor {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.Monitor.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11Monitor extends Gdk.Monitor {
|
||||||
|
static $gtype: GObject.GType<X11Monitor>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11Monitor.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
static get_output(monitor: Gdk.Monitor): xlib.XID;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11Screen {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface WindowManagerChanged {
|
||||||
|
(): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.Screen.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11Screen extends Gdk.Screen {
|
||||||
|
static $gtype: GObject.GType<X11Screen>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11Screen.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'window-manager-changed', callback: (_source: this) => void): number;
|
||||||
|
connect_after(signal: 'window-manager-changed', callback: (_source: this) => void): number;
|
||||||
|
emit(signal: 'window-manager-changed'): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the current workspace for `screen` when running under a
|
||||||
|
* window manager that supports multiple workspaces, as described
|
||||||
|
* in the
|
||||||
|
* [Extended Window Manager Hints](http://www.freedesktop.org/Standards/wm-spec) specification.
|
||||||
|
* @returns the current workspace, or 0 if workspaces are not supported
|
||||||
|
*/
|
||||||
|
get_current_desktop(): number;
|
||||||
|
/**
|
||||||
|
* Gets the XID of the specified output/monitor.
|
||||||
|
* If the X server does not support version 1.2 of the RANDR
|
||||||
|
* extension, 0 is returned.
|
||||||
|
* @param monitor_num number of the monitor, between 0 and gdk_screen_get_n_monitors (screen)
|
||||||
|
* @returns the XID of the monitor
|
||||||
|
*/
|
||||||
|
get_monitor_output(monitor_num: number): xlib.XID;
|
||||||
|
/**
|
||||||
|
* Returns the number of workspaces for `screen` when running under a
|
||||||
|
* window manager that supports multiple workspaces, as described
|
||||||
|
* in the
|
||||||
|
* [Extended Window Manager Hints](http://www.freedesktop.org/Standards/wm-spec) specification.
|
||||||
|
* @returns the number of workspaces, or 0 if workspaces are not supported
|
||||||
|
*/
|
||||||
|
get_number_of_desktops(): number;
|
||||||
|
/**
|
||||||
|
* Returns the index of a #GdkScreen.
|
||||||
|
* @returns the position of @screen among the screens of its display
|
||||||
|
*/
|
||||||
|
get_screen_number(): number;
|
||||||
|
/**
|
||||||
|
* Returns the name of the window manager for `screen`.
|
||||||
|
* @returns the name of the window manager screen @screen, or "unknown" if the window manager is unknown. The string is owned by GDK and should not be freed.
|
||||||
|
*/
|
||||||
|
get_window_manager_name(): string;
|
||||||
|
/**
|
||||||
|
* Returns the screen of a #GdkScreen.
|
||||||
|
* @returns an Xlib Screen*
|
||||||
|
*/
|
||||||
|
get_xscreen(): xlib.Screen;
|
||||||
|
/**
|
||||||
|
* Looks up the #GdkVisual for a particular screen and X Visual ID.
|
||||||
|
* @param xvisualid an X Visual ID.
|
||||||
|
* @returns the #GdkVisual (owned by the screen object), or %NULL if the visual ID wasn’t found.
|
||||||
|
*/
|
||||||
|
lookup_visual(xvisualid: xlib.VisualID): X11Visual;
|
||||||
|
/**
|
||||||
|
* This function is specific to the X11 backend of GDK, and indicates
|
||||||
|
* whether the window manager supports a certain hint from the
|
||||||
|
* [Extended Window Manager Hints](http://www.freedesktop.org/Standards/wm-spec) specification.
|
||||||
|
*
|
||||||
|
* When using this function, keep in mind that the window manager
|
||||||
|
* can change over time; so you shouldn’t use this function in
|
||||||
|
* a way that impacts persistent application state. A common bug
|
||||||
|
* is that your application can start up before the window manager
|
||||||
|
* does when the user logs in, and before the window manager starts
|
||||||
|
* gdk_x11_screen_supports_net_wm_hint() will return %FALSE for every property.
|
||||||
|
* You can monitor the window_manager_changed signal on #GdkScreen to detect
|
||||||
|
* a window manager change.
|
||||||
|
* @param property a property atom.
|
||||||
|
* @returns %TRUE if the window manager supports @property
|
||||||
|
*/
|
||||||
|
supports_net_wm_hint(property: Gdk.Atom): boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11Visual {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.Visual.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11Visual extends Gdk.Visual {
|
||||||
|
static $gtype: GObject.GType<X11Visual>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11Visual.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the X visual belonging to a #GdkVisual.
|
||||||
|
* @returns an Xlib Visual*.
|
||||||
|
*/
|
||||||
|
get_xvisual(): xlib.Visual;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11Window {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.Window.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11Window extends Gdk.Window {
|
||||||
|
static $gtype: GObject.GType<X11Window>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11Window.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static foreign_new_for_display(display: X11Display, window: xlib.Window): X11Window;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Looks up the #GdkWindow that wraps the given native window handle.
|
||||||
|
* @param display the #GdkDisplay corresponding to the window handle
|
||||||
|
* @param window an Xlib Window
|
||||||
|
*/
|
||||||
|
static lookup_for_display(display: X11Display, window: xlib.Window): X11Window;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the number of the workspace `window` is on.
|
||||||
|
* @returns the current workspace of @window
|
||||||
|
*/
|
||||||
|
get_desktop(): number;
|
||||||
|
/**
|
||||||
|
* Returns the X resource (window) belonging to a #GdkWindow.
|
||||||
|
* @returns the ID of @drawable’s X resource.
|
||||||
|
*/
|
||||||
|
get_xid(): xlib.Window;
|
||||||
|
/**
|
||||||
|
* Moves the window to the correct workspace when running under a
|
||||||
|
* window manager that supports multiple workspaces, as described
|
||||||
|
* in the [Extended Window Manager Hints](http://www.freedesktop.org/Standards/wm-spec) specification.
|
||||||
|
* Will not do anything if the window is already on all workspaces.
|
||||||
|
*/
|
||||||
|
move_to_current_desktop(): void;
|
||||||
|
/**
|
||||||
|
* Moves the window to the given workspace when running unde a
|
||||||
|
* window manager that supports multiple workspaces, as described
|
||||||
|
* in the [Extended Window Manager Hints](http://www.freedesktop.org/Standards/wm-spec) specification.
|
||||||
|
* @param desktop the number of the workspace to move the window to
|
||||||
|
*/
|
||||||
|
move_to_desktop(desktop: number): void;
|
||||||
|
/**
|
||||||
|
* This is the same as gdk_window_set_shadow_width() but it only works
|
||||||
|
* on GdkX11Window.
|
||||||
|
* @param left The left extent
|
||||||
|
* @param right The right extent
|
||||||
|
* @param top The top extent
|
||||||
|
* @param bottom The bottom extent
|
||||||
|
*/
|
||||||
|
set_frame_extents(left: number, right: number, top: number, bottom: number): void;
|
||||||
|
/**
|
||||||
|
* This function can be used to disable frame synchronization for a window.
|
||||||
|
* Normally frame synchronziation will be enabled or disabled based on whether
|
||||||
|
* the system has a compositor that supports frame synchronization, but if
|
||||||
|
* the window is not directly managed by the window manager, then frame
|
||||||
|
* synchronziation may need to be disabled. This is the case for a window
|
||||||
|
* embedded via the XEMBED protocol.
|
||||||
|
* @param frame_sync_enabled whether frame-synchronization should be enabled
|
||||||
|
*/
|
||||||
|
set_frame_sync_enabled(frame_sync_enabled: boolean): void;
|
||||||
|
/**
|
||||||
|
* Set a hint for the window manager, requesting that the titlebar
|
||||||
|
* should be hidden when the window is maximized.
|
||||||
|
*
|
||||||
|
* Note that this property is automatically updated by GTK+, so this
|
||||||
|
* function should only be used by applications which do not use GTK+
|
||||||
|
* to create toplevel windows.
|
||||||
|
* @param hide_titlebar_when_maximized whether to hide the titlebar when maximized
|
||||||
|
*/
|
||||||
|
set_hide_titlebar_when_maximized(hide_titlebar_when_maximized: boolean): void;
|
||||||
|
/**
|
||||||
|
* GTK+ applications can request a dark theme variant. In order to
|
||||||
|
* make other applications - namely window managers using GTK+ for
|
||||||
|
* themeing - aware of this choice, GTK+ uses this function to
|
||||||
|
* export the requested theme variant as _GTK_THEME_VARIANT property
|
||||||
|
* on toplevel windows.
|
||||||
|
*
|
||||||
|
* Note that this property is automatically updated by GTK+, so this
|
||||||
|
* function should only be used by applications which do not use GTK+
|
||||||
|
* to create toplevel windows.
|
||||||
|
* @param variant the theme variant to export
|
||||||
|
*/
|
||||||
|
set_theme_variant(variant: string): void;
|
||||||
|
/**
|
||||||
|
* The application can use this call to update the _NET_WM_USER_TIME
|
||||||
|
* property on a toplevel window. This property stores an Xserver
|
||||||
|
* time which represents the time of the last user input event
|
||||||
|
* received for this window. This property may be used by the window
|
||||||
|
* manager to alter the focus, stacking, and/or placement behavior of
|
||||||
|
* windows when they are mapped depending on whether the new window
|
||||||
|
* was created by a user action or is a "pop-up" window activated by a
|
||||||
|
* timer or some other event.
|
||||||
|
*
|
||||||
|
* Note that this property is automatically updated by GDK, so this
|
||||||
|
* function should only be used by applications which handle input
|
||||||
|
* events bypassing GDK.
|
||||||
|
* @param timestamp An XServer timestamp to which the property should be set
|
||||||
|
*/
|
||||||
|
set_user_time(timestamp: number): void;
|
||||||
|
/**
|
||||||
|
* This function modifies or removes an arbitrary X11 window
|
||||||
|
* property of type UTF8_STRING. If the given `window` is
|
||||||
|
* not a toplevel window, it is ignored.
|
||||||
|
* @param name Property name, will be interned as an X atom
|
||||||
|
* @param value Property value, or %NULL to delete
|
||||||
|
*/
|
||||||
|
set_utf8_property(name: string, value?: string | null): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type X11AppLaunchContextClass = typeof X11AppLaunchContext;
|
||||||
|
type X11CursorClass = typeof X11Cursor;
|
||||||
|
type X11DeviceCoreClass = typeof X11DeviceCore;
|
||||||
|
type X11DeviceManagerCoreClass = typeof X11DeviceManagerCore;
|
||||||
|
type X11DeviceManagerXI2Class = typeof X11DeviceManagerXI2;
|
||||||
|
type X11DeviceXI2Class = typeof X11DeviceXI2;
|
||||||
|
type X11DisplayClass = typeof X11Display;
|
||||||
|
type X11DisplayManagerClass = typeof X11DisplayManager;
|
||||||
|
type X11DragContextClass = typeof X11DragContext;
|
||||||
|
type X11GLContextClass = typeof X11GLContext;
|
||||||
|
type X11KeymapClass = typeof X11Keymap;
|
||||||
|
type X11MonitorClass = typeof X11Monitor;
|
||||||
|
type X11ScreenClass = typeof X11Screen;
|
||||||
|
type X11VisualClass = typeof X11Visual;
|
||||||
|
type X11WindowClass = typeof X11Window;
|
||||||
|
/**
|
||||||
|
* 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 GdkX11;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://GdkX11' {
|
||||||
|
import GdkX1130 from 'gi://GdkX11?version=3.0';
|
||||||
|
export default GdkX1130;
|
||||||
|
}
|
||||||
|
// END
|
746
@girs/gdkx11-4.0.d.ts
vendored
Normal file
746
@girs/gdkx11-4.0.d.ts
vendored
Normal file
|
@ -0,0 +1,746 @@
|
||||||
|
/// <reference path="./xlib-2.0.d.ts" />
|
||||||
|
/// <reference path="./gdk-4.0.d.ts" />
|
||||||
|
/// <reference path="./cairo-1.0.d.ts" />
|
||||||
|
/// <reference path="./cairo.d.ts" />
|
||||||
|
/// <reference path="./gobject-2.0.d.ts" />
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./pangocairo-1.0.d.ts" />
|
||||||
|
/// <reference path="./pango-1.0.d.ts" />
|
||||||
|
/// <reference path="./harfbuzz-0.0.d.ts" />
|
||||||
|
/// <reference path="./freetype2-2.0.d.ts" />
|
||||||
|
/// <reference path="./gio-2.0.d.ts" />
|
||||||
|
/// <reference path="./gmodule-2.0.d.ts" />
|
||||||
|
/// <reference path="./gdkpixbuf-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://GdkX11?version=4.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type xlib from 'gi://xlib?version=2.0';
|
||||||
|
import type Gdk from 'gi://Gdk?version=4.0';
|
||||||
|
import type cairo from 'cairo';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type PangoCairo from 'gi://PangoCairo?version=1.0';
|
||||||
|
import type Pango from 'gi://Pango?version=1.0';
|
||||||
|
import type HarfBuzz from 'gi://HarfBuzz?version=0.0';
|
||||||
|
import type freetype2 from 'gi://freetype2?version=2.0';
|
||||||
|
import type Gio from 'gi://Gio?version=2.0';
|
||||||
|
import type GModule from 'gi://GModule?version=2.0';
|
||||||
|
import type GdkPixbuf from 'gi://GdkPixbuf?version=2.0';
|
||||||
|
|
||||||
|
export namespace GdkX11 {
|
||||||
|
/**
|
||||||
|
* GdkX11-4.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
export namespace X11DeviceType {
|
||||||
|
export const $gtype: GObject.GType<X11DeviceType>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum X11DeviceType {
|
||||||
|
LOGICAL,
|
||||||
|
PHYSICAL,
|
||||||
|
FLOATING,
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Returns the device ID as seen by XInput2.
|
||||||
|
* @param device a `GdkDevice`
|
||||||
|
* @returns the XInput2 device ID
|
||||||
|
*/
|
||||||
|
function x11_device_get_id(device: X11DeviceXI2): number;
|
||||||
|
/**
|
||||||
|
* Returns the `GdkDevice` that wraps the given device ID.
|
||||||
|
* @param device_manager a `GdkDeviceManager`
|
||||||
|
* @param device_id a device ID, as understood by the XInput2 protocol
|
||||||
|
* @returns The `GdkDevice` wrapping the device ID, or %NULL if the given ID doesn’t currently represent a device.
|
||||||
|
*/
|
||||||
|
function x11_device_manager_lookup(device_manager: X11DeviceManagerXI2, device_id: number): X11DeviceXI2 | null;
|
||||||
|
/**
|
||||||
|
* Frees the data returned from gdk_x11_display_string_to_compound_text().
|
||||||
|
* @param ctext The pointer stored in @ctext from a call to gdk_x11_display_string_to_compound_text().
|
||||||
|
*/
|
||||||
|
function x11_free_compound_text(ctext: number): void;
|
||||||
|
/**
|
||||||
|
* Frees the array of strings created by
|
||||||
|
* gdk_x11_display_text_property_to_text_list().
|
||||||
|
* @param list the value stored in the @list parameter by a call to gdk_x11_display_text_property_to_text_list().
|
||||||
|
*/
|
||||||
|
function x11_free_text_list(list: string): void;
|
||||||
|
/**
|
||||||
|
* Routine to get the current X server time stamp.
|
||||||
|
* @param surface a `GdkSurface`, used for communication with the server. The surface must have `GDK_PROPERTY_CHANGE_MASK` in its events mask or a hang will result.
|
||||||
|
* @returns the time stamp
|
||||||
|
*/
|
||||||
|
function x11_get_server_time(surface: X11Surface): number;
|
||||||
|
/**
|
||||||
|
* Returns the X atom for a `GdkDisplay` corresponding to `atom_name`.
|
||||||
|
* This function caches the result, so if called repeatedly it is much
|
||||||
|
* faster than XInternAtom(), which is a round trip to the server each time.
|
||||||
|
* @param display a `GdkDisplay`
|
||||||
|
* @param atom_name a string
|
||||||
|
* @returns a X atom for a `GdkDisplay`
|
||||||
|
*/
|
||||||
|
function x11_get_xatom_by_name_for_display(display: X11Display, atom_name: string): xlib.Atom;
|
||||||
|
/**
|
||||||
|
* Returns the name of an X atom for its display. This
|
||||||
|
* function is meant mainly for debugging, so for convenience, unlike
|
||||||
|
* XAtomName() and the result doesn’t need to
|
||||||
|
* be freed.
|
||||||
|
* @param display the `GdkDisplay` where @xatom is defined
|
||||||
|
* @param xatom an X atom
|
||||||
|
* @returns name of the X atom; this string is owned by GDK, so it shouldn’t be modified or freed.
|
||||||
|
*/
|
||||||
|
function x11_get_xatom_name_for_display(display: X11Display, xatom: xlib.Atom): string;
|
||||||
|
/**
|
||||||
|
* Find the `GdkDisplay` corresponding to `xdisplay,` if any exists.
|
||||||
|
* @param xdisplay a pointer to an X Display
|
||||||
|
* @returns the `GdkDisplay`, if found, otherwise %NULL.
|
||||||
|
*/
|
||||||
|
function x11_lookup_xdisplay(xdisplay: xlib.Display): X11Display;
|
||||||
|
/**
|
||||||
|
* Sets the `SM_CLIENT_ID` property on the application’s leader window so that
|
||||||
|
* the window manager can save the application’s state using the X11R6 ICCCM
|
||||||
|
* session management protocol.
|
||||||
|
*
|
||||||
|
* See the X Session Management Library documentation for more information on
|
||||||
|
* session management and the Inter-Client Communication Conventions Manual
|
||||||
|
* @param sm_client_id the client id assigned by the session manager when the connection was opened, or %NULL to remove the property.
|
||||||
|
*/
|
||||||
|
function x11_set_sm_client_id(sm_client_id?: string | null): void;
|
||||||
|
namespace X11AppLaunchContext {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.AppLaunchContext.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11AppLaunchContext extends Gdk.AppLaunchContext {
|
||||||
|
static $gtype: GObject.GType<X11AppLaunchContext>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11AppLaunchContext.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11DeviceManagerXI2 {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {
|
||||||
|
display: Gdk.Display;
|
||||||
|
major: number;
|
||||||
|
minor: number;
|
||||||
|
opcode: number;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11DeviceManagerXI2 extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<X11DeviceManagerXI2>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
get display(): Gdk.Display;
|
||||||
|
get major(): number;
|
||||||
|
get minor(): number;
|
||||||
|
get opcode(): number;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11DeviceManagerXI2.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11DeviceXI2 {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.Device.ConstructorProps {
|
||||||
|
device_id: number;
|
||||||
|
deviceId: number;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11DeviceXI2 extends Gdk.Device {
|
||||||
|
static $gtype: GObject.GType<X11DeviceXI2>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
get device_id(): number;
|
||||||
|
get deviceId(): number;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11DeviceXI2.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11Display {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface Xevent {
|
||||||
|
(xevent?: any | null): boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.Display.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11Display extends Gdk.Display {
|
||||||
|
static $gtype: GObject.GType<X11Display>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11Display.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'xevent', callback: (_source: this, xevent: any | null) => boolean): number;
|
||||||
|
connect_after(signal: 'xevent', callback: (_source: this, xevent: any | null) => boolean): number;
|
||||||
|
emit(signal: 'xevent', xevent?: any | null): void;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Tries to open a new display to the X server given by
|
||||||
|
* `display_name`. If opening the display fails, %NULL is
|
||||||
|
* returned.
|
||||||
|
* @param display_name name of the X display. See the XOpenDisplay() for details.
|
||||||
|
*/
|
||||||
|
static open(display_name?: string | null): Gdk.Display | null;
|
||||||
|
/**
|
||||||
|
* Sets the program class.
|
||||||
|
*
|
||||||
|
* The X11 backend uses the program class to set the class name part
|
||||||
|
* of the `WM_CLASS` property on toplevel windows; see the ICCCM.
|
||||||
|
* @param display a `GdkDisplay`
|
||||||
|
* @param program_class a string
|
||||||
|
*/
|
||||||
|
static set_program_class(display: Gdk.Display, program_class: string): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Pops the error trap pushed by gdk_x11_display_error_trap_push().
|
||||||
|
* Will XSync() if necessary and will always block until
|
||||||
|
* the error is known to have occurred or not occurred,
|
||||||
|
* so the error code can be returned.
|
||||||
|
*
|
||||||
|
* If you don’t need to use the return value,
|
||||||
|
* gdk_x11_display_error_trap_pop_ignored() would be more efficient.
|
||||||
|
* @returns X error code or 0 on success
|
||||||
|
*/
|
||||||
|
error_trap_pop(): number;
|
||||||
|
/**
|
||||||
|
* Pops the error trap pushed by gdk_x11_display_error_trap_push().
|
||||||
|
* Does not block to see if an error occurred; merely records the
|
||||||
|
* range of requests to ignore errors for, and ignores those errors
|
||||||
|
* if they arrive asynchronously.
|
||||||
|
*/
|
||||||
|
error_trap_pop_ignored(): void;
|
||||||
|
/**
|
||||||
|
* Begins a range of X requests on `display` for which X error events
|
||||||
|
* will be ignored. Unignored errors (when no trap is pushed) will abort
|
||||||
|
* the application. Use gdk_x11_display_error_trap_pop() or
|
||||||
|
* gdk_x11_display_error_trap_pop_ignored()to lift a trap pushed
|
||||||
|
* with this function.
|
||||||
|
*/
|
||||||
|
error_trap_push(): void;
|
||||||
|
/**
|
||||||
|
* Returns the default group leader surface for all toplevel surfaces
|
||||||
|
* on `display`. This surface is implicitly created by GDK.
|
||||||
|
* See gdk_x11_surface_set_group().
|
||||||
|
* @returns The default group leader surface for @display
|
||||||
|
*/
|
||||||
|
get_default_group(): Gdk.Surface;
|
||||||
|
/**
|
||||||
|
* Retrieves the EGL display connection object for the given GDK display.
|
||||||
|
*
|
||||||
|
* This function returns `NULL` if GDK is using GLX.
|
||||||
|
* @returns the EGL display object
|
||||||
|
*/
|
||||||
|
get_egl_display(): any | null;
|
||||||
|
/**
|
||||||
|
* Retrieves the version of the EGL implementation.
|
||||||
|
* @returns %TRUE if EGL is available
|
||||||
|
*/
|
||||||
|
get_egl_version(): [boolean, number, number];
|
||||||
|
/**
|
||||||
|
* Retrieves the version of the GLX implementation.
|
||||||
|
* @returns %TRUE if GLX is available
|
||||||
|
*/
|
||||||
|
get_glx_version(): [boolean, number, number];
|
||||||
|
/**
|
||||||
|
* Gets the primary monitor for the display.
|
||||||
|
*
|
||||||
|
* The primary monitor is considered the monitor where the “main desktop”
|
||||||
|
* lives. While normal application surfaces typically allow the window
|
||||||
|
* manager to place the surfaces, specialized desktop applications
|
||||||
|
* such as panels should place themselves on the primary monitor.
|
||||||
|
*
|
||||||
|
* If no monitor is the designated primary monitor, any monitor
|
||||||
|
* (usually the first) may be returned.
|
||||||
|
* @returns the primary monitor, or any monitor if no primary monitor is configured by the user
|
||||||
|
*/
|
||||||
|
get_primary_monitor(): Gdk.Monitor;
|
||||||
|
/**
|
||||||
|
* Retrieves the `GdkX11Screen` of the `display`.
|
||||||
|
* @returns the `GdkX11Screen`
|
||||||
|
*/
|
||||||
|
get_screen(): X11Screen;
|
||||||
|
/**
|
||||||
|
* Gets the startup notification ID for a display.
|
||||||
|
* @returns the startup notification ID for @display
|
||||||
|
*/
|
||||||
|
get_startup_notification_id(): string;
|
||||||
|
// Conflicted with Gdk.Display.get_startup_notification_id
|
||||||
|
get_startup_notification_id(...args: never[]): any;
|
||||||
|
/**
|
||||||
|
* Returns the timestamp of the last user interaction on
|
||||||
|
* `display`. The timestamp is taken from events caused
|
||||||
|
* by user interaction such as key presses or pointer
|
||||||
|
* movements. See gdk_x11_surface_set_user_time().
|
||||||
|
* @returns the timestamp of the last user interaction
|
||||||
|
*/
|
||||||
|
get_user_time(): number;
|
||||||
|
/**
|
||||||
|
* Returns the X cursor belonging to a `GdkCursor`, potentially
|
||||||
|
* creating the cursor.
|
||||||
|
*
|
||||||
|
* Be aware that the returned cursor may not be unique to `cursor`.
|
||||||
|
* It may for example be shared with its fallback cursor. On old
|
||||||
|
* X servers that don't support the XCursor extension, all cursors
|
||||||
|
* may even fall back to a few default cursors.
|
||||||
|
* @param cursor a `GdkCursor`
|
||||||
|
* @returns an Xlib Cursor.
|
||||||
|
*/
|
||||||
|
get_xcursor(cursor: Gdk.Cursor): xlib.Cursor;
|
||||||
|
/**
|
||||||
|
* Returns the X display of a `GdkDisplay`.
|
||||||
|
* @returns an X display
|
||||||
|
*/
|
||||||
|
get_xdisplay(): xlib.Display;
|
||||||
|
/**
|
||||||
|
* Returns the root X window used by `GdkDisplay`.
|
||||||
|
* @returns an X Window
|
||||||
|
*/
|
||||||
|
get_xrootwindow(): xlib.Window;
|
||||||
|
/**
|
||||||
|
* Returns the X Screen used by `GdkDisplay`.
|
||||||
|
* @returns an X Screen
|
||||||
|
*/
|
||||||
|
get_xscreen(): xlib.Screen;
|
||||||
|
/**
|
||||||
|
* Call XGrabServer() on `display`.
|
||||||
|
* To ungrab the display again, use gdk_x11_display_ungrab().
|
||||||
|
*
|
||||||
|
* gdk_x11_display_grab()/gdk_x11_display_ungrab() calls can be nested.
|
||||||
|
*/
|
||||||
|
grab(): void;
|
||||||
|
/**
|
||||||
|
* Sets the cursor theme from which the images for cursor
|
||||||
|
* should be taken.
|
||||||
|
*
|
||||||
|
* If the windowing system supports it, existing cursors created
|
||||||
|
* with [ctor`Gdk`.Cursor.new_from_name] are updated to reflect the theme
|
||||||
|
* change. Custom cursors constructed with [ctor`Gdk`.Cursor.new_from_texture]
|
||||||
|
* will have to be handled by the application (GTK applications can learn
|
||||||
|
* about cursor theme changes by listening for change notification
|
||||||
|
* for the corresponding `GtkSetting`).
|
||||||
|
* @param theme the name of the cursor theme to use, or %NULL to unset a previously set value
|
||||||
|
* @param size the cursor size to use, or 0 to keep the previous size
|
||||||
|
*/
|
||||||
|
set_cursor_theme(theme: string | null, size: number): void;
|
||||||
|
/**
|
||||||
|
* Sets the startup notification ID for a display.
|
||||||
|
*
|
||||||
|
* This is usually taken from the value of the DESKTOP_STARTUP_ID
|
||||||
|
* environment variable, but in some cases (such as the application not
|
||||||
|
* being launched using exec()) it can come from other sources.
|
||||||
|
*
|
||||||
|
* If the ID contains the string "_TIME" then the portion following that
|
||||||
|
* string is taken to be the X11 timestamp of the event that triggered
|
||||||
|
* the application to be launched and the GDK current event time is set
|
||||||
|
* accordingly.
|
||||||
|
*
|
||||||
|
* The startup ID is also what is used to signal that the startup is
|
||||||
|
* complete (for example, when opening a window or when calling
|
||||||
|
* gdk_display_notify_startup_complete()).
|
||||||
|
* @param startup_id the startup notification ID (must be valid utf8)
|
||||||
|
*/
|
||||||
|
set_startup_notification_id(startup_id: string): void;
|
||||||
|
/**
|
||||||
|
* Forces a specific window scale for all windows on this display,
|
||||||
|
* instead of using the default or user configured scale. This
|
||||||
|
* is can be used to disable scaling support by setting `scale` to
|
||||||
|
* 1, or to programmatically set the window scale.
|
||||||
|
*
|
||||||
|
* Once the scale is set by this call it will not change in response
|
||||||
|
* to later user configuration changes.
|
||||||
|
* @param scale The new scale value
|
||||||
|
*/
|
||||||
|
set_surface_scale(scale: number): void;
|
||||||
|
/**
|
||||||
|
* Convert a string from the encoding of the current
|
||||||
|
* locale into a form suitable for storing in a window property.
|
||||||
|
* @param str a nul-terminated string
|
||||||
|
* @returns 0 upon success, non-zero upon failure
|
||||||
|
*/
|
||||||
|
string_to_compound_text(str: string): [number, string, number, Uint8Array];
|
||||||
|
/**
|
||||||
|
* Convert a text string from the encoding as it is stored
|
||||||
|
* in a property into an array of strings in the encoding of
|
||||||
|
* the current locale. (The elements of the array represent the
|
||||||
|
* nul-separated elements of the original text string.)
|
||||||
|
* @param encoding a string representing the encoding. The most common values for this are "STRING", or "COMPOUND_TEXT". This is value used as the type for the property
|
||||||
|
* @param format the format of the property
|
||||||
|
* @param text The text data
|
||||||
|
* @param length The number of items to transform
|
||||||
|
* @param list location to store an array of strings in the encoding of the current locale. This array should be freed using gdk_x11_free_text_list().
|
||||||
|
* @returns the number of strings stored in list, or 0, if the conversion failed
|
||||||
|
*/
|
||||||
|
text_property_to_text_list(
|
||||||
|
encoding: string,
|
||||||
|
format: number,
|
||||||
|
text: number,
|
||||||
|
length: number,
|
||||||
|
list: string,
|
||||||
|
): number;
|
||||||
|
/**
|
||||||
|
* Ungrab `display` after it has been grabbed with
|
||||||
|
* gdk_x11_display_grab().
|
||||||
|
*/
|
||||||
|
ungrab(): void;
|
||||||
|
/**
|
||||||
|
* Converts from UTF-8 to compound text.
|
||||||
|
* @param str a UTF-8 string
|
||||||
|
* @returns %TRUE if the conversion succeeded, otherwise %FALSE
|
||||||
|
*/
|
||||||
|
utf8_to_compound_text(str: string): [boolean, string, number, Uint8Array];
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11Drag {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.Drag.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11Drag extends Gdk.Drag {
|
||||||
|
static $gtype: GObject.GType<X11Drag>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11Drag.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11GLContext {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.GLContext.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
abstract class X11GLContext extends Gdk.GLContext {
|
||||||
|
static $gtype: GObject.GType<X11GLContext>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11GLContext.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11Monitor {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.Monitor.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11Monitor extends Gdk.Monitor {
|
||||||
|
static $gtype: GObject.GType<X11Monitor>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11Monitor.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the XID of the Output corresponding to `monitor`.
|
||||||
|
* @returns the XID of @monitor
|
||||||
|
*/
|
||||||
|
get_output(): xlib.XID;
|
||||||
|
/**
|
||||||
|
* Retrieves the size and position of the “work area” on a monitor
|
||||||
|
* within the display coordinate space.
|
||||||
|
*
|
||||||
|
* The returned geometry is in ”application pixels”, not in ”device pixels”
|
||||||
|
* (see [method`Gdk`.Monitor.get_scale_factor]).
|
||||||
|
*/
|
||||||
|
get_workarea(): Gdk.Rectangle;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11Screen {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface WindowManagerChanged {
|
||||||
|
(): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11Screen extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<X11Screen>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11Screen.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'window-manager-changed', callback: (_source: this) => void): number;
|
||||||
|
connect_after(signal: 'window-manager-changed', callback: (_source: this) => void): number;
|
||||||
|
emit(signal: 'window-manager-changed'): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the current workspace for `screen` when running under a
|
||||||
|
* window manager that supports multiple workspaces, as described
|
||||||
|
* in the
|
||||||
|
* [Extended Window Manager Hints](http://www.freedesktop.org/Standards/wm-spec) specification.
|
||||||
|
* @returns the current workspace, or 0 if workspaces are not supported
|
||||||
|
*/
|
||||||
|
get_current_desktop(): number;
|
||||||
|
/**
|
||||||
|
* Gets the XID of the specified output/monitor.
|
||||||
|
* If the X server does not support version 1.2 of the RANDR
|
||||||
|
* extension, 0 is returned.
|
||||||
|
* @param monitor_num number of the monitor, between 0 and gdk_screen_get_n_monitors (screen)
|
||||||
|
* @returns the XID of the monitor
|
||||||
|
*/
|
||||||
|
get_monitor_output(monitor_num: number): xlib.XID;
|
||||||
|
/**
|
||||||
|
* Returns the number of workspaces for `screen` when running under a
|
||||||
|
* window manager that supports multiple workspaces, as described
|
||||||
|
* in the
|
||||||
|
* [Extended Window Manager Hints](http://www.freedesktop.org/Standards/wm-spec) specification.
|
||||||
|
* @returns the number of workspaces, or 0 if workspaces are not supported
|
||||||
|
*/
|
||||||
|
get_number_of_desktops(): number;
|
||||||
|
/**
|
||||||
|
* Returns the index of a `GdkX11Screen`.
|
||||||
|
* @returns the position of @screen among the screens of its display
|
||||||
|
*/
|
||||||
|
get_screen_number(): number;
|
||||||
|
/**
|
||||||
|
* Returns the name of the window manager for `screen`.
|
||||||
|
* @returns the name of the window manager screen @screen, or "unknown" if the window manager is unknown. The string is owned by GDK and should not be freed.
|
||||||
|
*/
|
||||||
|
get_window_manager_name(): string;
|
||||||
|
/**
|
||||||
|
* Returns the screen of a `GdkX11Screen`.
|
||||||
|
* @returns an Xlib Screen*
|
||||||
|
*/
|
||||||
|
get_xscreen(): xlib.Screen;
|
||||||
|
/**
|
||||||
|
* This function is specific to the X11 backend of GDK, and indicates
|
||||||
|
* whether the window manager supports a certain hint from the
|
||||||
|
* [Extended Window Manager Hints](http://www.freedesktop.org/Standards/wm-spec) specification.
|
||||||
|
*
|
||||||
|
* When using this function, keep in mind that the window manager
|
||||||
|
* can change over time; so you shouldn’t use this function in
|
||||||
|
* a way that impacts persistent application state. A common bug
|
||||||
|
* is that your application can start up before the window manager
|
||||||
|
* does when the user logs in, and before the window manager starts
|
||||||
|
* gdk_x11_screen_supports_net_wm_hint() will return %FALSE for every property.
|
||||||
|
* You can monitor the window_manager_changed signal on `GdkX11Screen` to detect
|
||||||
|
* a window manager change.
|
||||||
|
* @param property_name name of the WM property
|
||||||
|
* @returns %TRUE if the window manager supports @property
|
||||||
|
*/
|
||||||
|
supports_net_wm_hint(property_name: string): boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace X11Surface {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Gdk.Surface.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class X11Surface extends Gdk.Surface {
|
||||||
|
static $gtype: GObject.GType<X11Surface>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<X11Surface.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Looks up the `GdkSurface` that wraps the given native window handle.
|
||||||
|
* @param display the `GdkDisplay` corresponding to the window handle
|
||||||
|
* @param window an Xlib Window
|
||||||
|
*/
|
||||||
|
static lookup_for_display(display: X11Display, window: xlib.Window): X11Surface;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the number of the workspace `surface` is on.
|
||||||
|
* @returns the current workspace of @surface
|
||||||
|
*/
|
||||||
|
get_desktop(): number;
|
||||||
|
/**
|
||||||
|
* Returns the group this surface belongs to.
|
||||||
|
* @returns The group of this surface;
|
||||||
|
*/
|
||||||
|
get_group(): Gdk.Surface | null;
|
||||||
|
/**
|
||||||
|
* Returns the X resource (surface) belonging to a `GdkSurface`.
|
||||||
|
* @returns the ID of @drawable’s X resource.
|
||||||
|
*/
|
||||||
|
get_xid(): xlib.Window;
|
||||||
|
/**
|
||||||
|
* Moves the surface to the correct workspace when running under a
|
||||||
|
* window manager that supports multiple workspaces, as described
|
||||||
|
* in the [Extended Window Manager Hints](http://www.freedesktop.org/Standards/wm-spec) specification.
|
||||||
|
* Will not do anything if the surface is already on all workspaces.
|
||||||
|
*/
|
||||||
|
move_to_current_desktop(): void;
|
||||||
|
/**
|
||||||
|
* Moves the surface to the given workspace when running unde a
|
||||||
|
* window manager that supports multiple workspaces, as described
|
||||||
|
* in the [Extended Window Manager Hints](http://www.freedesktop.org/Standards/wm-spec) specification.
|
||||||
|
* @param desktop the number of the workspace to move the surface to
|
||||||
|
*/
|
||||||
|
move_to_desktop(desktop: number): void;
|
||||||
|
/**
|
||||||
|
* This function can be used to disable frame synchronization for a surface.
|
||||||
|
* Normally frame synchronziation will be enabled or disabled based on whether
|
||||||
|
* the system has a compositor that supports frame synchronization, but if
|
||||||
|
* the surface is not directly managed by the window manager, then frame
|
||||||
|
* synchronziation may need to be disabled. This is the case for a surface
|
||||||
|
* embedded via the XEMBED protocol.
|
||||||
|
* @param frame_sync_enabled whether frame-synchronization should be enabled
|
||||||
|
*/
|
||||||
|
set_frame_sync_enabled(frame_sync_enabled: boolean): void;
|
||||||
|
/**
|
||||||
|
* Sets the group leader of `surface` to be `leader`.
|
||||||
|
* See the ICCCM for details.
|
||||||
|
* @param leader a `GdkSurface`
|
||||||
|
*/
|
||||||
|
set_group(leader: Gdk.Surface): void;
|
||||||
|
/**
|
||||||
|
* Sets a hint on `surface` that pagers should not
|
||||||
|
* display it. See the EWMH for details.
|
||||||
|
* @param skips_pager %TRUE to skip pagers
|
||||||
|
*/
|
||||||
|
set_skip_pager_hint(skips_pager: boolean): void;
|
||||||
|
/**
|
||||||
|
* Sets a hint on `surface` that taskbars should not
|
||||||
|
* display it. See the EWMH for details.
|
||||||
|
* @param skips_taskbar %TRUE to skip taskbars
|
||||||
|
*/
|
||||||
|
set_skip_taskbar_hint(skips_taskbar: boolean): void;
|
||||||
|
/**
|
||||||
|
* GTK applications can request a dark theme variant. In order to
|
||||||
|
* make other applications - namely window managers using GTK for
|
||||||
|
* themeing - aware of this choice, GTK uses this function to
|
||||||
|
* export the requested theme variant as _GTK_THEME_VARIANT property
|
||||||
|
* on toplevel surfaces.
|
||||||
|
*
|
||||||
|
* Note that this property is automatically updated by GTK, so this
|
||||||
|
* function should only be used by applications which do not use GTK
|
||||||
|
* to create toplevel surfaces.
|
||||||
|
* @param variant the theme variant to export
|
||||||
|
*/
|
||||||
|
set_theme_variant(variant: string): void;
|
||||||
|
/**
|
||||||
|
* Sets a hint on `surface` that it needs user attention.
|
||||||
|
* See the ICCCM for details.
|
||||||
|
* @param urgent %TRUE to indicate urgenct attention needed
|
||||||
|
*/
|
||||||
|
set_urgency_hint(urgent: boolean): void;
|
||||||
|
/**
|
||||||
|
* The application can use this call to update the _NET_WM_USER_TIME
|
||||||
|
* property on a toplevel surface. This property stores an Xserver
|
||||||
|
* time which represents the time of the last user input event
|
||||||
|
* received for this surface. This property may be used by the window
|
||||||
|
* manager to alter the focus, stacking, and/or placement behavior of
|
||||||
|
* surfaces when they are mapped depending on whether the new surface
|
||||||
|
* was created by a user action or is a "pop-up" surface activated by a
|
||||||
|
* timer or some other event.
|
||||||
|
*
|
||||||
|
* Note that this property is automatically updated by GDK, so this
|
||||||
|
* function should only be used by applications which handle input
|
||||||
|
* events bypassing GDK.
|
||||||
|
* @param timestamp An XServer timestamp to which the property should be set
|
||||||
|
*/
|
||||||
|
set_user_time(timestamp: number): void;
|
||||||
|
/**
|
||||||
|
* This function modifies or removes an arbitrary X11 window
|
||||||
|
* property of type UTF8_STRING. If the given `surface` is
|
||||||
|
* not a toplevel surface, it is ignored.
|
||||||
|
* @param name Property name, will be interned as an X atom
|
||||||
|
* @param value Property value, or %NULL to delete
|
||||||
|
*/
|
||||||
|
set_utf8_property(name: string, value?: string | null): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type X11AppLaunchContextClass = typeof X11AppLaunchContext;
|
||||||
|
type X11DeviceManagerXI2Class = typeof X11DeviceManagerXI2;
|
||||||
|
type X11DeviceXI2Class = typeof X11DeviceXI2;
|
||||||
|
type X11DisplayClass = typeof X11Display;
|
||||||
|
type X11DragClass = typeof X11Drag;
|
||||||
|
type X11GLContextClass = typeof X11GLContext;
|
||||||
|
type X11MonitorClass = typeof X11Monitor;
|
||||||
|
type X11ScreenClass = typeof X11Screen;
|
||||||
|
type X11SurfaceClass = typeof X11Surface;
|
||||||
|
/**
|
||||||
|
* 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 GdkX11;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://GdkX11' {
|
||||||
|
import GdkX1140 from 'gi://GdkX11?version=4.0';
|
||||||
|
export default GdkX1140;
|
||||||
|
}
|
||||||
|
// END
|
43
@girs/gettext.d.ts
vendored
Normal file
43
@girs/gettext.d.ts
vendored
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
declare module 'gettext' {
|
||||||
|
export enum LocaleCategory {
|
||||||
|
ALL,
|
||||||
|
COLLATE,
|
||||||
|
CTYPE,
|
||||||
|
MESSAGES,
|
||||||
|
MONETARY,
|
||||||
|
NUMERIC,
|
||||||
|
TIME,
|
||||||
|
}
|
||||||
|
export function setlocale(category: number, locale: string | null): string;
|
||||||
|
export function textdomain(domainname: string | null): string;
|
||||||
|
export function bindtextdomain(domainname: string, dirname: string | null): string;
|
||||||
|
export function gettext(msgid: string): string;
|
||||||
|
export function dgettext(domainname: string | null, msgid: string): string;
|
||||||
|
export function dcgettext(domainname: string | null, msgid: string, category: number): string;
|
||||||
|
export function ngettext(msgid: string, msgid_plural: string, n: number): string;
|
||||||
|
export function dngettext(domainname: string, msgid: string, msgid_plural: string, n: number): string;
|
||||||
|
export function pgettext(context: string, msgid: string): string;
|
||||||
|
export function dpgettext(dom: string | null, context: string, msgid: string): string;
|
||||||
|
export function domain(domainName: string): {
|
||||||
|
gettext: (msgid: string) => string;
|
||||||
|
ngettext: (msgid: string, msgid_plural: string, n: number) => string;
|
||||||
|
pgettext: (context: string, msgid: string) => string;
|
||||||
|
};
|
||||||
|
|
||||||
|
const Gettext: {
|
||||||
|
LocaleCategory: typeof LocaleCategory;
|
||||||
|
setlocale: typeof setlocale;
|
||||||
|
textdomain: typeof textdomain;
|
||||||
|
bindtextdomain: typeof bindtextdomain;
|
||||||
|
gettext: typeof gettext;
|
||||||
|
dgettext: typeof dgettext;
|
||||||
|
dcgettext: typeof dcgettext;
|
||||||
|
ngettext: typeof ngettext;
|
||||||
|
dngettext: typeof dngettext;
|
||||||
|
pgettext: typeof pgettext;
|
||||||
|
dpgettext: typeof dpgettext;
|
||||||
|
domain: typeof domain;
|
||||||
|
};
|
||||||
|
|
||||||
|
export default Gettext;
|
||||||
|
}
|
67
@girs/gi.d.ts
vendored
Normal file
67
@girs/gi.d.ts
vendored
Normal file
|
@ -0,0 +1,67 @@
|
||||||
|
/**
|
||||||
|
* This file exports all GIR module type definitions.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import './glib-2.0.d.ts';
|
||||||
|
import './gio-2.0.d.ts';
|
||||||
|
import './gobject-2.0.d.ts';
|
||||||
|
import './xrandr-1.3.d.ts';
|
||||||
|
import './xlib-2.0.d.ts';
|
||||||
|
import './xft-2.0.d.ts';
|
||||||
|
import './xfixes-4.0.d.ts';
|
||||||
|
import './win32-1.0.d.ts';
|
||||||
|
import './libxml2-2.0.d.ts';
|
||||||
|
import './freetype2-2.0.d.ts';
|
||||||
|
import './fontconfig-2.0.d.ts';
|
||||||
|
import './cairo-1.0.d.ts';
|
||||||
|
import './wp-0.5.d.ts';
|
||||||
|
import './vulkan-1.0.d.ts';
|
||||||
|
import './pangoxft-1.0.d.ts';
|
||||||
|
import './pangoot-1.0.d.ts';
|
||||||
|
import './pangofc-1.0.d.ts';
|
||||||
|
import './pangoft2-1.0.d.ts';
|
||||||
|
import './pangocairo-1.0.d.ts';
|
||||||
|
import './pango-1.0.d.ts';
|
||||||
|
import './nm-1.0.d.ts';
|
||||||
|
import './json-1.0.d.ts';
|
||||||
|
import './harfbuzz-0.0.d.ts';
|
||||||
|
import './gtklayershell-0.1.d.ts';
|
||||||
|
import './gtk4sessionlock-1.0.d.ts';
|
||||||
|
import './gtk4layershell-1.0.d.ts';
|
||||||
|
import './gtk-4.0.d.ts';
|
||||||
|
import './gtk-3.0.d.ts';
|
||||||
|
import './gsk-4.0.d.ts';
|
||||||
|
import './graphene-1.0.d.ts';
|
||||||
|
import './giounix-2.0.d.ts';
|
||||||
|
import './gdkx11-4.0.d.ts';
|
||||||
|
import './gdkx11-3.0.d.ts';
|
||||||
|
import './gdkwayland-4.0.d.ts';
|
||||||
|
import './gdkpixdata-2.0.d.ts';
|
||||||
|
import './gdkpixbuf-2.0.d.ts';
|
||||||
|
import './gdk-4.0.d.ts';
|
||||||
|
import './gdk-3.0.d.ts';
|
||||||
|
import './gmodule-2.0.d.ts';
|
||||||
|
import './glibunix-2.0.d.ts';
|
||||||
|
import './gl-1.0.d.ts';
|
||||||
|
import './girepository-3.0.d.ts';
|
||||||
|
import './girepository-2.0.d.ts';
|
||||||
|
import './gdesktopenums-3.0.d.ts';
|
||||||
|
import './dbusglib-1.0.d.ts';
|
||||||
|
import './dbus-1.0.d.ts';
|
||||||
|
import './atspi-2.0.d.ts';
|
||||||
|
import './atk-1.0.d.ts';
|
||||||
|
import './astalwp-0.1.d.ts';
|
||||||
|
import './astaltray-0.1.d.ts';
|
||||||
|
import './astalpowerprofiles-0.1.d.ts';
|
||||||
|
import './astalnotifd-0.1.d.ts';
|
||||||
|
import './astalnetwork-0.1.d.ts';
|
||||||
|
import './astalmpris-0.1.d.ts';
|
||||||
|
import './astalio-0.1.d.ts';
|
||||||
|
import './astalhyprland-0.1.d.ts';
|
||||||
|
import './astalcava-0.1.d.ts';
|
||||||
|
import './astalbluetooth-0.1.d.ts';
|
||||||
|
import './astalbattery-0.1.d.ts';
|
||||||
|
import './astalapps-0.1.d.ts';
|
||||||
|
import './astal-4.0.d.ts';
|
||||||
|
import './astal-3.0.d.ts';
|
||||||
|
import './appmenuglibtranslator-24.02.d.ts';
|
84175
@girs/gio-2.0.d.ts
vendored
Normal file
84175
@girs/gio-2.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
5198
@girs/giounix-2.0.d.ts
vendored
Normal file
5198
@girs/giounix-2.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
2261
@girs/girepository-2.0.d.ts
vendored
Normal file
2261
@girs/girepository-2.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
2566
@girs/girepository-3.0.d.ts
vendored
Normal file
2566
@girs/girepository-3.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
738
@girs/gjs.d.ts
vendored
Normal file
738
@girs/gjs.d.ts
vendored
Normal file
|
@ -0,0 +1,738 @@
|
||||||
|
/// <reference path="./gobject-2.0.d.ts" />
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./gettext.d.ts" />
|
||||||
|
/// <reference path="./system.d.ts" />
|
||||||
|
/// <reference path="./cairo.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 itself or create a bug report on https://github.com/gjsify/ts-for-gir
|
||||||
|
*/
|
||||||
|
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
|
||||||
|
import gettext from 'gettext';
|
||||||
|
import system from 'system';
|
||||||
|
import cairo from 'cairo';
|
||||||
|
|
||||||
|
// https://gitlab.gnome.org/GNOME/gjs/-/blob/1.72.0/modules/script/package.js
|
||||||
|
declare namespace package {
|
||||||
|
/**
|
||||||
|
* Although there are references in the documentation of more properties that
|
||||||
|
* this object should accepts, only the following are actually used in the init code,
|
||||||
|
* and all the other have their values derived from them.
|
||||||
|
*/
|
||||||
|
interface PackageInitParams {
|
||||||
|
/** The base name of the entry point (eg. org.foo.Bar.App) */
|
||||||
|
name: string;
|
||||||
|
/** The version of the package */
|
||||||
|
version: string;
|
||||||
|
/** The prefix of the package */
|
||||||
|
prefix: string;
|
||||||
|
/**
|
||||||
|
* The final datadir and libdir when installed;
|
||||||
|
* usually, these would be prefix + '/share' and
|
||||||
|
* and prefix + '/lib' (or '/lib64')
|
||||||
|
*/
|
||||||
|
libdir: string;
|
||||||
|
/**
|
||||||
|
* The final datadir and libdir when installed;
|
||||||
|
* usually, these would be prefix + '/share' and
|
||||||
|
* and prefix + '/lib' (or '/lib64')
|
||||||
|
*/
|
||||||
|
datadir?: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The base name of the entry point (eg. org.foo.Bar.App)
|
||||||
|
*
|
||||||
|
* Note: Run `pkg.init()` before accessing this property.
|
||||||
|
*/
|
||||||
|
export const name: string;
|
||||||
|
/**
|
||||||
|
* The version of the package
|
||||||
|
*
|
||||||
|
* Note: Run `pkg.init()` before accessing this property.
|
||||||
|
*/
|
||||||
|
export const version: string;
|
||||||
|
/**
|
||||||
|
* The prefix of the package
|
||||||
|
*
|
||||||
|
* Note: Run `pkg.init()` before accessing this property.
|
||||||
|
*/
|
||||||
|
export const prefix: string;
|
||||||
|
/**
|
||||||
|
* The final datadir when installed; usually, these would be prefix + '/share'
|
||||||
|
*
|
||||||
|
* Note: Run `pkg.init()` before accessing this property.
|
||||||
|
*/
|
||||||
|
export const datadir: string;
|
||||||
|
/**
|
||||||
|
* The final libdir when installed; usually, these would be prefix + '/lib' (or '/lib64')
|
||||||
|
*
|
||||||
|
* Note: Run `pkg.init()` before accessing this property.
|
||||||
|
*/
|
||||||
|
export const libdir: string;
|
||||||
|
/**
|
||||||
|
* The final pkglibdir when installed; usually, this would be prefix + '/lib' (or '/lib64')
|
||||||
|
*
|
||||||
|
* Note: Run `pkg.init()` before accessing this property.
|
||||||
|
*/
|
||||||
|
export const pkglibdir: string;
|
||||||
|
/**
|
||||||
|
* The final moduledir when installed; usually, this would be prefix + '/lib' (or '/lib64')
|
||||||
|
*
|
||||||
|
* Note: Run `pkg.init()` before accessing this property.
|
||||||
|
*/
|
||||||
|
export const moduledir: string;
|
||||||
|
/**
|
||||||
|
* The directory containing gettext translation files; this will be datadir + '/locale' when installed and './po' in the source tree
|
||||||
|
*
|
||||||
|
* Note: Run `pkg.init()` before accessing this property.
|
||||||
|
*/
|
||||||
|
export const localedir: string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Initialize directories and global variables. Must be called
|
||||||
|
* before any of other API in Package is used.
|
||||||
|
* `params` must be an object with at least the following keys:
|
||||||
|
* - name: the package name ($(PACKAGE_NAME) in autotools,
|
||||||
|
* eg. org.foo.Bar)
|
||||||
|
* - version: the package version
|
||||||
|
* - prefix: the installation prefix
|
||||||
|
*
|
||||||
|
* init() will take care to check if the program is running from
|
||||||
|
* the source directory or not, by looking for a 'src' directory.
|
||||||
|
*
|
||||||
|
* At the end, the global variable 'pkg' will contain the
|
||||||
|
* Package module (imports.package). Additionally, the following
|
||||||
|
* module variables will be available:
|
||||||
|
* - name: the base name of the entry point (eg. org.foo.Bar.App)
|
||||||
|
* - version: same as in @params
|
||||||
|
* - prefix: the installation prefix (as passed in @params)
|
||||||
|
* - datadir, libdir: the final datadir and libdir when installed;
|
||||||
|
* usually, these would be prefix + '/share' and
|
||||||
|
* and prefix + '/lib' (or '/lib64')
|
||||||
|
* - pkgdatadir: the directory to look for private data files, such as
|
||||||
|
* images, stylesheets and UI definitions;
|
||||||
|
* this will be datadir + name when installed and
|
||||||
|
* './data' when running from the source tree
|
||||||
|
* - pkglibdir: the directory to look for private typelibs and C
|
||||||
|
* libraries;
|
||||||
|
* this will be libdir + name when installed and
|
||||||
|
* './lib' when running from the source tree
|
||||||
|
* - moduledir: the directory to look for JS modules;
|
||||||
|
* this will be pkglibdir when installed and
|
||||||
|
* './src' when running from the source tree
|
||||||
|
* - localedir: the directory containing gettext translation files;
|
||||||
|
* this will be datadir + '/locale' when installed
|
||||||
|
* and './po' in the source tree
|
||||||
|
*
|
||||||
|
* All paths are absolute and will not end with '/'.
|
||||||
|
*
|
||||||
|
* As a side effect, init() calls GLib.set_prgname().
|
||||||
|
*
|
||||||
|
* @param {object} params package parameters
|
||||||
|
*/
|
||||||
|
export function init(params: PackageInitParams): void;
|
||||||
|
/**
|
||||||
|
* This is the function to use if you want to have multiple
|
||||||
|
* entry points in one package.
|
||||||
|
* You must define a main(ARGV) function inside the passed
|
||||||
|
* in module, and then the launcher would be
|
||||||
|
*
|
||||||
|
* imports.package.init(...);
|
||||||
|
* imports.package.run(imports.entrypoint);
|
||||||
|
*
|
||||||
|
* @param module the module to run
|
||||||
|
* @returns the exit code of the module's main() function
|
||||||
|
*/
|
||||||
|
export function run(module: { main: (argv: string[]) => void }): number | undefined;
|
||||||
|
/**
|
||||||
|
* This is a convenience function if your package has a
|
||||||
|
* single entry point.
|
||||||
|
* You must define a main(ARGV) function inside a main.js
|
||||||
|
* module in moduledir.
|
||||||
|
*
|
||||||
|
* @param params see init()
|
||||||
|
*/
|
||||||
|
export function start(params: PackageInitParams): void;
|
||||||
|
/**
|
||||||
|
* Mark a dependency on a specific version of one or more
|
||||||
|
* external GI typelibs.
|
||||||
|
* `libs` must be an object whose keys are a typelib name,
|
||||||
|
* and values are the respective version. The empty string
|
||||||
|
* indicates any version.
|
||||||
|
* @param deps The external dependencies to import
|
||||||
|
*/
|
||||||
|
export function require(deps: Record<string, string>): void;
|
||||||
|
/**
|
||||||
|
* As checkSymbol(), but exit with an error if the
|
||||||
|
* dependency cannot be satisfied.
|
||||||
|
*
|
||||||
|
* @param lib an external dependency to import
|
||||||
|
* @param ver version of the dependency
|
||||||
|
* @param symbol symbol to check for
|
||||||
|
*/
|
||||||
|
export function requireSymbol(lib: string, ver?: string, symbol?: string): void;
|
||||||
|
/**
|
||||||
|
* Check whether an external GI typelib can be imported
|
||||||
|
* and provides @symbol.
|
||||||
|
*
|
||||||
|
* Symbols may refer to
|
||||||
|
* - global functions ('main_quit')
|
||||||
|
* - classes ('Window')
|
||||||
|
* - class / instance methods ('IconTheme.get_default' / 'IconTheme.has_icon')
|
||||||
|
* - GObject properties ('Window.default_height')
|
||||||
|
*
|
||||||
|
* @param lib an external dependency to import
|
||||||
|
* @param ver version of the dependency
|
||||||
|
* @param symbol symbol to check for
|
||||||
|
* @returns true if `lib` can be imported and provides `symbol`, false
|
||||||
|
* otherwise
|
||||||
|
*/
|
||||||
|
export function checkSymbol(lib: string, ver: string, symbol: string): boolean;
|
||||||
|
/**
|
||||||
|
* Initialize `gettext`.
|
||||||
|
* After calling this method `globalThis._`, `globalThis.C_` and `globalThis.N_` will be available.
|
||||||
|
*/
|
||||||
|
export function initGettext(): void;
|
||||||
|
/**
|
||||||
|
* Initializes string formatting capabilities by adding a format() method to String.prototype.
|
||||||
|
*
|
||||||
|
* After calling this method, you can use a printf-style string formatting by calling
|
||||||
|
* the format() method on any string:
|
||||||
|
*
|
||||||
|
* @example
|
||||||
|
* ```ts
|
||||||
|
* pkg.initFormat();
|
||||||
|
*
|
||||||
|
* // Now you can use format() on any string
|
||||||
|
* const name = "User";
|
||||||
|
* const count = 5;
|
||||||
|
* const formatted = "Hello %s, you have %d items".format(name, count);
|
||||||
|
* // formatted = "Hello User, you have 5 items"
|
||||||
|
*
|
||||||
|
* // Format numbers with precision
|
||||||
|
* const price = 10.5;
|
||||||
|
* const priceStr = "Price: $%.2f".format(price);
|
||||||
|
* // priceStr = "Price: $10.50"
|
||||||
|
*
|
||||||
|
* // Pad with zeros
|
||||||
|
* const id = 42;
|
||||||
|
* const idStr = "ID: %05d".format(id);
|
||||||
|
* // idStr = "ID: 00042"
|
||||||
|
* ```
|
||||||
|
*/
|
||||||
|
export function initFormat(): void;
|
||||||
|
/**
|
||||||
|
* As checkSymbol(), but exit with an error if the
|
||||||
|
* dependency cannot be satisfied.
|
||||||
|
*
|
||||||
|
* @param lib an external dependency to import
|
||||||
|
* @param ver version of the dependency
|
||||||
|
* @param symbol symbol to check for
|
||||||
|
*/
|
||||||
|
export function initSubmodule(lib: string, ver?: string, symbol?: string): void;
|
||||||
|
/**
|
||||||
|
* Load and register a GResource named @name. @name is optional and defaults to ${package-name}
|
||||||
|
* @param name The name of the GResource to load
|
||||||
|
*/
|
||||||
|
export function loadResource(name?: string): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare namespace byteArray {
|
||||||
|
export class ByteArray {
|
||||||
|
static get(target: any, property: string, receiver: any): any;
|
||||||
|
static set(target: any, property: string, value: any, receiver: any): boolean;
|
||||||
|
|
||||||
|
length: number;
|
||||||
|
protected _array: Uint8Array;
|
||||||
|
|
||||||
|
constructor(x: Uint8Array | number);
|
||||||
|
toString(encoding?: TextDecoderEncoding): string;
|
||||||
|
fromString(input: string, encoding?: TextDecoderEncoding): ByteArray;
|
||||||
|
toGBytes(): GLib.Bytes;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** @deprecated Use {@link TextEncoder.encode} instead */
|
||||||
|
export function fromString(input: string, encoding?: TextDecoderEncoding): Uint8Array;
|
||||||
|
|
||||||
|
/** @deprecated Use {@link GLib.Bytes.toArray} instead */
|
||||||
|
export function fromGBytes(input: GLib.Bytes): Uint8Array;
|
||||||
|
|
||||||
|
/** @deprecated Use {@link TextDecoder.decode} instead */
|
||||||
|
export function toString(x: Uint8Array, encoding?: TextDecoderEncoding): string;
|
||||||
|
|
||||||
|
/** @deprecated Use {@link GLib.Bytes new GLib.Bytes() } instead */
|
||||||
|
export function toGBytes(x: Uint8Array): GLib.Bytes;
|
||||||
|
|
||||||
|
/** @deprecated Use {@link ByteArray new ByteArray()} instead */
|
||||||
|
export function fromArray(array: Iterable<number>): ByteArray;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare namespace lang {
|
||||||
|
// TODO: There is a lot more in Lang
|
||||||
|
export function Class(props: any): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare namespace format {
|
||||||
|
/**
|
||||||
|
* Formats a string using printf-style format specifiers.
|
||||||
|
*
|
||||||
|
* @param str The format string
|
||||||
|
* @param args The arguments to be formatted
|
||||||
|
* @returns The formatted string
|
||||||
|
*/
|
||||||
|
export function vprintf(str: string, args: (string | number | boolean | null | undefined)[]): string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Prints a formatted string to the console.
|
||||||
|
* Similar to C's printf function.
|
||||||
|
*
|
||||||
|
* @param fmt The format string
|
||||||
|
* @param args The arguments to be formatted
|
||||||
|
*/
|
||||||
|
export function printf(fmt: string, ...args: (string | number | boolean | null | undefined)[]): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Formats a string with the given arguments.
|
||||||
|
* This is the implementation that backs String.prototype.format
|
||||||
|
* when pkg.initFormat() is called.
|
||||||
|
*
|
||||||
|
* Supported format specifiers:
|
||||||
|
* - %s: Formats as a string
|
||||||
|
* - %d: Formats as an integer
|
||||||
|
* - %x: Formats as a hexadecimal number
|
||||||
|
* - %f: Formats as a floating point number, optionally with precision (e.g. %.2f)
|
||||||
|
*
|
||||||
|
* All specifiers can be prefixed with a minimum field width, e.g. "%5s" will pad with spaces.
|
||||||
|
* If the width is prefixed with '0', it will pad with zeroes instead of spaces.
|
||||||
|
*
|
||||||
|
* @example
|
||||||
|
* ```ts
|
||||||
|
* format.format("Hello %s, you have %d items", "User", 5);
|
||||||
|
* // Returns: "Hello User, you have 5 items"
|
||||||
|
* ```
|
||||||
|
*
|
||||||
|
* @param fmt The format string
|
||||||
|
* @param args The arguments to format the string with
|
||||||
|
* @returns The formatted string
|
||||||
|
*/
|
||||||
|
export function format(fmt: string, ...args: (string | number | boolean | null | undefined)[]): string;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare namespace mainloop {
|
||||||
|
export function quit(name: string): void;
|
||||||
|
export function idle_source(handler: any, priority?: number): any;
|
||||||
|
export function idle_add(handler: any, priority?: number): any;
|
||||||
|
export function timeout_source(timeout: any, handler: any, priority?: number): any;
|
||||||
|
export function timeout_seconds_source(timeout: any, handler: any, priority?: number): any;
|
||||||
|
export function timeout_add(timeout: any, handler: any, priority?: number): any;
|
||||||
|
export function timeout_add_seconds(timeout: any, handler: any, priority?: number): any;
|
||||||
|
export function source_remove(id: any): any;
|
||||||
|
export function run(name: string): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* You can use the `Signals.addSignalMethods` method to apply the `Signals` convenience methods to an `Object`.
|
||||||
|
* Generally, this is called on an object prototype, but may also be called on an object instance.
|
||||||
|
* You can use this Interface for this object or prototype to make the methods in typescript known
|
||||||
|
* @example
|
||||||
|
* ```ts
|
||||||
|
* const Signals = imports.signals;
|
||||||
|
*
|
||||||
|
* // Define an interface with the same name of your class to make the methods known
|
||||||
|
* interface Events extends Signals.Methods {}
|
||||||
|
*
|
||||||
|
* class Events {}
|
||||||
|
* Signals.addSignalMethods(Events.prototype);
|
||||||
|
*
|
||||||
|
* const events = new Events();
|
||||||
|
*
|
||||||
|
* // Typescript will not complain here
|
||||||
|
* events.emit("test-signal", "test argument");
|
||||||
|
* ```
|
||||||
|
*/
|
||||||
|
export interface SignalMethods {
|
||||||
|
/**
|
||||||
|
* Connects a callback to a signal for an object. Pass the returned ID to
|
||||||
|
* `disconnect()` to remove the handler.
|
||||||
|
*
|
||||||
|
* If `callback` returns `true`, emission will stop and no other handlers will be
|
||||||
|
* invoked.
|
||||||
|
*
|
||||||
|
* > Warning: Unlike GObject signals, `this` within a signal callback will always
|
||||||
|
* > refer to the global object (ie. `globalThis`).
|
||||||
|
*
|
||||||
|
* @param sigName A signal name
|
||||||
|
* @param callback A callback function
|
||||||
|
* @returns A handler ID
|
||||||
|
*/
|
||||||
|
connect(sigName: string, callback: (self: any, ...args: any[]) => void): number;
|
||||||
|
/**
|
||||||
|
* Emits a signal for an object. Emission stops if a signal handler returns `true`.
|
||||||
|
*
|
||||||
|
* Unlike GObject signals, it is not necessary to declare signals or define their
|
||||||
|
* signature. Simply call `emit()` with whatever signal name you wish, with
|
||||||
|
* whatever arguments you wish.
|
||||||
|
* @param sigName A signal name
|
||||||
|
* @param args Any number of arguments, of any type
|
||||||
|
*/
|
||||||
|
emit(sigName: string, ...args: any[]): void;
|
||||||
|
/**
|
||||||
|
* Disconnects a handler for a signal.
|
||||||
|
* @param id The ID of the handler to be disconnected
|
||||||
|
*/
|
||||||
|
disconnect(id: number): void;
|
||||||
|
/**
|
||||||
|
* Disconnects all signal handlers for an object.
|
||||||
|
*/
|
||||||
|
disconnectAll(): void;
|
||||||
|
/**
|
||||||
|
* Checks if a handler ID is connected.
|
||||||
|
* @param id The ID of the handler to be disconnected
|
||||||
|
* @returns `true` if connected, or `false` if not
|
||||||
|
*/
|
||||||
|
signalHandlerIsConnected(id: number): boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare namespace signals {
|
||||||
|
export function addSignalMethods<T = any>(proto: T): proto is T & SignalMethods;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare global {
|
||||||
|
// https://gitlab.gnome.org/GNOME/gjs/-/blob/1.73.2/modules/esm/_encoding/encodingMap.js#L7-232
|
||||||
|
type TextDecoderEncoding =
|
||||||
|
| 'unicode-1-1-utf-8'
|
||||||
|
| 'unicode11utf8'
|
||||||
|
| 'unicode20utf8'
|
||||||
|
| 'utf-8'
|
||||||
|
| 'utf8'
|
||||||
|
| 'x-unicode20utf8'
|
||||||
|
| '866'
|
||||||
|
| 'cp866'
|
||||||
|
| 'csibm866'
|
||||||
|
| 'ibm866'
|
||||||
|
| 'csisolatin2'
|
||||||
|
| 'iso-8859-2'
|
||||||
|
| 'iso-ir-101'
|
||||||
|
| 'iso8859-2'
|
||||||
|
| 'iso88592'
|
||||||
|
| 'iso_8859-2'
|
||||||
|
| 'iso_8859-2:1987'
|
||||||
|
| 'l2'
|
||||||
|
| 'latin2'
|
||||||
|
| 'csisolatin3'
|
||||||
|
| 'iso-8859-3'
|
||||||
|
| 'iso-ir-109'
|
||||||
|
| 'iso8859-3'
|
||||||
|
| 'iso88593'
|
||||||
|
| 'iso_8859-3'
|
||||||
|
| 'iso_8859-3:1988'
|
||||||
|
| 'l3'
|
||||||
|
| 'latin3'
|
||||||
|
| 'csisolatin4'
|
||||||
|
| 'iso-8859-4'
|
||||||
|
| 'iso-ir-110'
|
||||||
|
| 'iso8859-4'
|
||||||
|
| 'iso88594'
|
||||||
|
| 'iso_8859-4'
|
||||||
|
| 'iso_8859-4:1988'
|
||||||
|
| 'l4'
|
||||||
|
| 'latin4'
|
||||||
|
| 'csisolatincyrillic'
|
||||||
|
| 'cyrillic'
|
||||||
|
| 'iso-8859-5'
|
||||||
|
| 'iso-ir-144'
|
||||||
|
| 'iso8859-5'
|
||||||
|
| 'iso88595'
|
||||||
|
| 'iso_8859-5'
|
||||||
|
| 'iso_8859-5:1988'
|
||||||
|
| 'arabic'
|
||||||
|
| 'asmo-708'
|
||||||
|
| 'csiso88596e'
|
||||||
|
| 'csiso88596i'
|
||||||
|
| 'csisolatinarabic'
|
||||||
|
| 'ecma-114'
|
||||||
|
| 'iso-8859-6'
|
||||||
|
| 'iso-8859-6-e'
|
||||||
|
| 'iso-8859-6-i'
|
||||||
|
| 'iso-ir-127'
|
||||||
|
| 'iso8859-6'
|
||||||
|
| 'iso88596'
|
||||||
|
| 'iso_8859-6'
|
||||||
|
| 'iso_8859-6:1987'
|
||||||
|
| 'csisolatingreek'
|
||||||
|
| 'ecma-118'
|
||||||
|
| 'elot_928'
|
||||||
|
| 'greek'
|
||||||
|
| 'greek8'
|
||||||
|
| 'iso-8859-7'
|
||||||
|
| 'iso-ir-126'
|
||||||
|
| 'iso8859-7'
|
||||||
|
| 'iso88597'
|
||||||
|
| 'iso_8859-7'
|
||||||
|
| 'iso_8859-7:1987'
|
||||||
|
| 'sun_eu_greek'
|
||||||
|
| 'csiso88598e'
|
||||||
|
| 'csisolatinhebrew'
|
||||||
|
| 'hebrew'
|
||||||
|
| 'iso-8859-8'
|
||||||
|
| 'iso-8859-8-e'
|
||||||
|
| 'iso-ir-138'
|
||||||
|
| 'iso8859-8'
|
||||||
|
| 'iso88598'
|
||||||
|
| 'iso_8859-8'
|
||||||
|
| 'iso_8859-8:1988'
|
||||||
|
| 'visual'
|
||||||
|
| 'csiso88598i'
|
||||||
|
| 'iso-8859-8-i'
|
||||||
|
| 'logical'
|
||||||
|
| 'csisolatin6'
|
||||||
|
| 'iso-8859-10'
|
||||||
|
| 'iso-ir-157'
|
||||||
|
| 'iso8859-10'
|
||||||
|
| 'iso885910'
|
||||||
|
| 'l6'
|
||||||
|
| 'latin6'
|
||||||
|
| 'iso-8859-13'
|
||||||
|
| 'iso8859-13'
|
||||||
|
| 'iso885913'
|
||||||
|
| 'iso-8859-14'
|
||||||
|
| 'iso8859-14'
|
||||||
|
| 'iso885914'
|
||||||
|
| 'csisolatin9'
|
||||||
|
| 'iso-8859-15'
|
||||||
|
| 'iso8859-15'
|
||||||
|
| 'iso885915'
|
||||||
|
| 'iso_8859-15'
|
||||||
|
| 'l9'
|
||||||
|
| 'iso-8859-16'
|
||||||
|
| 'cskoi8r'
|
||||||
|
| 'koi'
|
||||||
|
| 'koi8'
|
||||||
|
| 'koi8-r'
|
||||||
|
| 'koi8_r'
|
||||||
|
| 'koi8-ru'
|
||||||
|
| 'koi8-u'
|
||||||
|
| 'csmacintosh'
|
||||||
|
| 'mac'
|
||||||
|
| 'macintosh'
|
||||||
|
| 'x-mac-roman'
|
||||||
|
| 'dos-874'
|
||||||
|
| 'iso-8859-11'
|
||||||
|
| 'iso8859-11'
|
||||||
|
| 'iso885911'
|
||||||
|
| 'tis-620'
|
||||||
|
| 'windows-874'
|
||||||
|
| 'cp1250'
|
||||||
|
| 'windows-1250'
|
||||||
|
| 'x-cp1250'
|
||||||
|
| 'cp1251'
|
||||||
|
| 'windows-1251'
|
||||||
|
| 'x-cp1251'
|
||||||
|
| 'ansi_x3.4-1968'
|
||||||
|
| 'ascii'
|
||||||
|
| 'cp1252'
|
||||||
|
| 'cp819'
|
||||||
|
| 'csisolatin1'
|
||||||
|
| 'ibm819'
|
||||||
|
| 'iso-8859-1'
|
||||||
|
| 'iso-ir-100'
|
||||||
|
| 'iso8859-1'
|
||||||
|
| 'iso88591'
|
||||||
|
| 'iso_8859-1'
|
||||||
|
| 'iso_8859-1:1987'
|
||||||
|
| 'l1'
|
||||||
|
| 'latin1'
|
||||||
|
| 'us-ascii'
|
||||||
|
| 'windows-1252'
|
||||||
|
| 'x-cp1252'
|
||||||
|
| 'cp1253'
|
||||||
|
| 'windows-1253'
|
||||||
|
| 'x-cp1253'
|
||||||
|
| 'cp1254'
|
||||||
|
| 'csisolatin5'
|
||||||
|
| 'iso-8859-9'
|
||||||
|
| 'iso-ir-148'
|
||||||
|
| 'iso8859-9'
|
||||||
|
| 'iso88599'
|
||||||
|
| 'iso_8859-9'
|
||||||
|
| 'iso_8859-9:1989'
|
||||||
|
| 'l5'
|
||||||
|
| 'latin5'
|
||||||
|
| 'windows-1254'
|
||||||
|
| 'x-cp1254'
|
||||||
|
| 'cp1255'
|
||||||
|
| 'windows-1255'
|
||||||
|
| 'x-cp1255'
|
||||||
|
| 'cp1256'
|
||||||
|
| 'windows-1256'
|
||||||
|
| 'x-cp1256'
|
||||||
|
| 'cp1257'
|
||||||
|
| 'windows-1257'
|
||||||
|
| 'x-cp1257'
|
||||||
|
| 'cp1258'
|
||||||
|
| 'windows-1258'
|
||||||
|
| 'x-cp1258'
|
||||||
|
| 'x-mac-cyrillic'
|
||||||
|
| 'x-mac-ukrainian'
|
||||||
|
| 'chinese'
|
||||||
|
| 'csgb2312'
|
||||||
|
| 'csiso58gb231280'
|
||||||
|
| 'gb2312'
|
||||||
|
| 'gb_2312'
|
||||||
|
| 'gb_2312-80'
|
||||||
|
| 'gbk'
|
||||||
|
| 'iso-ir-58'
|
||||||
|
| 'x-gbk'
|
||||||
|
| 'gb18030'
|
||||||
|
| 'big5'
|
||||||
|
| 'cn-big5'
|
||||||
|
| 'csbig5'
|
||||||
|
| 'x-x-big5'
|
||||||
|
| 'cseucpkdfmtjapanese'
|
||||||
|
| 'euc-jp'
|
||||||
|
| 'x-euc-jp'
|
||||||
|
| 'csiso2022jp'
|
||||||
|
| 'iso-2022-jp'
|
||||||
|
| 'csshiftjis'
|
||||||
|
| 'ms932'
|
||||||
|
| 'ms_kanji'
|
||||||
|
| 'shift-jis'
|
||||||
|
| 'shift_jis'
|
||||||
|
| 'sjis'
|
||||||
|
| 'windows-31j'
|
||||||
|
| 'x-sjis'
|
||||||
|
| 'cseuckr'
|
||||||
|
| 'csksc56011987'
|
||||||
|
| 'euc-kr'
|
||||||
|
| 'iso-ir-149'
|
||||||
|
| 'korean'
|
||||||
|
| 'ks_c_5601-1987'
|
||||||
|
| 'ks_c_5601-1989'
|
||||||
|
| 'ksc5601'
|
||||||
|
| 'ksc_5601'
|
||||||
|
| 'windows-949'
|
||||||
|
| 'unicodefffe'
|
||||||
|
| 'utf-16be'
|
||||||
|
| 'csunicode'
|
||||||
|
| 'iso-10646-ucs-2'
|
||||||
|
| 'ucs-2'
|
||||||
|
| 'unicode'
|
||||||
|
| 'unicodefeff'
|
||||||
|
| 'utf-16'
|
||||||
|
| 'utf-16le';
|
||||||
|
|
||||||
|
interface GjsGiImports {
|
||||||
|
// Will be extended by the import of more gir types
|
||||||
|
versions: {
|
||||||
|
[namespace: string]: string;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
interface GjsImports {
|
||||||
|
gi: GjsGiImports;
|
||||||
|
lang: typeof lang;
|
||||||
|
system: typeof system;
|
||||||
|
signals: typeof signals;
|
||||||
|
package: typeof package;
|
||||||
|
mainloop: typeof mainloop;
|
||||||
|
searchPath: string[];
|
||||||
|
gettext: typeof gettext;
|
||||||
|
byteArray: typeof byteArray;
|
||||||
|
format: typeof format;
|
||||||
|
cairo: typeof cairo;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Overwrites, see https://gitlab.gnome.org/GNOME/gjs/-/blob/master/modules/script/package.js
|
||||||
|
/**
|
||||||
|
* Run `pkg.initGettext()` before using this.
|
||||||
|
* See {@link gettext.gettext}
|
||||||
|
*/
|
||||||
|
const _: typeof gettext.gettext;
|
||||||
|
/**
|
||||||
|
* Run `pkg.initGettext()` before using this.
|
||||||
|
* See {@link gettext.pgettext}
|
||||||
|
*/
|
||||||
|
const C_: typeof gettext.pgettext;
|
||||||
|
/**
|
||||||
|
* Run `pkg.initGettext()` before using this.
|
||||||
|
* Currently not implemented.
|
||||||
|
*/
|
||||||
|
const N_: (x: string) => string;
|
||||||
|
|
||||||
|
function print(...args: any[]): void;
|
||||||
|
function printerr(...args: any[]): void;
|
||||||
|
function log(obj: object, others?: object[]): void;
|
||||||
|
function log(msg: string, substitutions?: any[]): void;
|
||||||
|
function logError(exception: object, message?: any): void;
|
||||||
|
function logError(message?: any): void;
|
||||||
|
|
||||||
|
const pkg: typeof package;
|
||||||
|
|
||||||
|
interface BooleanConstructor {
|
||||||
|
$gtype: GObject.GType<boolean>;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface NumberConstructor {
|
||||||
|
$gtype: GObject.GType<number>;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface StringConstructor {
|
||||||
|
$gtype: GObject.GType<string>;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface StringConstructor {
|
||||||
|
$gtype: GObject.GType<string>;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface ObjectConstructor {
|
||||||
|
$gtype: GObject.GType<Object>;
|
||||||
|
}
|
||||||
|
|
||||||
|
const imports: GjsImports;
|
||||||
|
|
||||||
|
const ARGV: string[];
|
||||||
|
|
||||||
|
interface String {
|
||||||
|
/**
|
||||||
|
* Formats a string with the given arguments.
|
||||||
|
* This method is made available by calling `pkg.initFormat()`.
|
||||||
|
*
|
||||||
|
* Supported format specifiers:
|
||||||
|
* - %s: Formats as a string
|
||||||
|
* - %d: Formats as an integer
|
||||||
|
* - %x: Formats as a hexadecimal number
|
||||||
|
* - %f: Formats as a floating point number, optionally with precision (e.g. %.2f)
|
||||||
|
*
|
||||||
|
* All specifiers can be prefixed with a minimum field width, e.g. "%5s" will pad with spaces.
|
||||||
|
* If the width is prefixed with '0', it will pad with zeroes instead of spaces.
|
||||||
|
*
|
||||||
|
* @example
|
||||||
|
* ```ts
|
||||||
|
* // After calling pkg.initFormat()
|
||||||
|
* "Hello %s, you have %d items".format("User", 5);
|
||||||
|
* // Returns: "Hello User, you have 5 items"
|
||||||
|
*
|
||||||
|
* "Price: $%.2f".format(10.5);
|
||||||
|
* // Returns: "Price: $10.50"
|
||||||
|
*
|
||||||
|
* "ID: %05d".format(42);
|
||||||
|
* // Returns: "ID: 00042"
|
||||||
|
* ```
|
||||||
|
*
|
||||||
|
* @param args The arguments to format the string with
|
||||||
|
* @returns The formatted string
|
||||||
|
*/
|
||||||
|
format(...args: (string | number | boolean | null | undefined)[]): string;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
declare const _imports: GjsImports;
|
||||||
|
export default _imports;
|
||||||
|
export { _imports as imports };
|
145
@girs/gl-1.0.d.ts
vendored
Normal file
145
@girs/gl-1.0.d.ts
vendored
Normal file
|
@ -0,0 +1,145 @@
|
||||||
|
/// <reference path="./gobject-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://GL?version=1.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
export namespace GL {
|
||||||
|
/**
|
||||||
|
* GL-1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
function InitNames(): void;
|
||||||
|
class bitfield {
|
||||||
|
static $gtype: GObject.GType<bitfield>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class charARB {
|
||||||
|
static $gtype: GObject.GType<charARB>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class clampf {
|
||||||
|
static $gtype: GObject.GType<clampf>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class __boolean {
|
||||||
|
static $gtype: GObject.GType<__boolean>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class __enum {
|
||||||
|
static $gtype: GObject.GType<__enum>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class float {
|
||||||
|
static $gtype: GObject.GType<float>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class handleARB {
|
||||||
|
static $gtype: GObject.GType<handleARB>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class int {
|
||||||
|
static $gtype: GObject.GType<int>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class intptr {
|
||||||
|
static $gtype: GObject.GType<intptr>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class sizei {
|
||||||
|
static $gtype: GObject.GType<sizei>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class sizeiptr {
|
||||||
|
static $gtype: GObject.GType<sizeiptr>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class uint {
|
||||||
|
static $gtype: GObject.GType<uint>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class __void {
|
||||||
|
static $gtype: GObject.GType<__void>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 GL;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://GL' {
|
||||||
|
import GL10 from 'gi://GL?version=1.0';
|
||||||
|
export default GL10;
|
||||||
|
}
|
||||||
|
// END
|
27314
@girs/glib-2.0.d.ts
vendored
Normal file
27314
@girs/glib-2.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
103
@girs/glibunix-2.0.d.ts
vendored
Normal file
103
@girs/glibunix-2.0.d.ts
vendored
Normal file
|
@ -0,0 +1,103 @@
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./gobject-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://GLibUnix?version=2.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
export namespace GLibUnix {
|
||||||
|
/**
|
||||||
|
* GLibUnix-2.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Mnemonic constants for the ends of a Unix pipe.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Mnemonic constants for the ends of a Unix pipe.
|
||||||
|
*/
|
||||||
|
export namespace PipeEnd {
|
||||||
|
export const $gtype: GObject.GType<PipeEnd>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum PipeEnd {
|
||||||
|
/**
|
||||||
|
* The readable file descriptor 0
|
||||||
|
*/
|
||||||
|
READ,
|
||||||
|
/**
|
||||||
|
* The writable file descriptor 1
|
||||||
|
*/
|
||||||
|
WRITE,
|
||||||
|
}
|
||||||
|
function closefrom(lowfd: number): number;
|
||||||
|
function error_quark(): GLib.Quark;
|
||||||
|
function fd_add_full(
|
||||||
|
priority: number,
|
||||||
|
fd: number,
|
||||||
|
condition: GLib.IOCondition | null,
|
||||||
|
_function: GLib.UnixFDSourceFunc,
|
||||||
|
): number;
|
||||||
|
function fd_source_new(fd: number, condition: GLib.IOCondition | null): GLib.Source;
|
||||||
|
function fdwalk_set_cloexec(lowfd: number): number;
|
||||||
|
function get_passwd_entry(user_name: string): any | null;
|
||||||
|
function open_pipe(fds: number, flags: number): boolean;
|
||||||
|
function set_fd_nonblocking(fd: number, nonblock: boolean): boolean;
|
||||||
|
function signal_add_full(priority: number, signum: number, handler: GLib.SourceFunc): number;
|
||||||
|
function signal_source_new(signum: number): GLib.Source;
|
||||||
|
interface FDSourceFunc {
|
||||||
|
(fd: number, condition: GLib.IOCondition): boolean;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* A Unix pipe. The advantage of this type over `int[2]` is that it can
|
||||||
|
* be closed automatically when it goes out of scope, using `g_auto(GUnixPipe)`,
|
||||||
|
* on compilers that support that feature.
|
||||||
|
*/
|
||||||
|
class Pipe {
|
||||||
|
static $gtype: GObject.GType<Pipe>;
|
||||||
|
|
||||||
|
// Fields
|
||||||
|
|
||||||
|
fds: number[];
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
properties?: Partial<{
|
||||||
|
fds: number[];
|
||||||
|
}>,
|
||||||
|
);
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 GLibUnix;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://GLibUnix' {
|
||||||
|
import GLibUnix20 from 'gi://GLibUnix?version=2.0';
|
||||||
|
export default GLibUnix20;
|
||||||
|
}
|
||||||
|
// END
|
207
@girs/gmodule-2.0.d.ts
vendored
Normal file
207
@girs/gmodule-2.0.d.ts
vendored
Normal file
|
@ -0,0 +1,207 @@
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./gobject-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://GModule?version=2.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
export namespace GModule {
|
||||||
|
/**
|
||||||
|
* GModule-2.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Errors returned by g_module_open_full().
|
||||||
|
*/
|
||||||
|
class ModuleError extends GLib.Error {
|
||||||
|
static $gtype: GObject.GType<ModuleError>;
|
||||||
|
|
||||||
|
// Static fields
|
||||||
|
|
||||||
|
/**
|
||||||
|
* there was an error loading or opening a module file
|
||||||
|
*/
|
||||||
|
static FAILED: number;
|
||||||
|
/**
|
||||||
|
* a module returned an error from its `g_module_check_init()` function
|
||||||
|
*/
|
||||||
|
static CHECK_FAILED: number;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(options: { message: string; code: number });
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
const MODULE_IMPL_AR: number;
|
||||||
|
const MODULE_IMPL_DL: number;
|
||||||
|
const MODULE_IMPL_NONE: number;
|
||||||
|
const MODULE_IMPL_WIN32: number;
|
||||||
|
/**
|
||||||
|
* A portable way to build the filename of a module. The platform-specific
|
||||||
|
* prefix and suffix are added to the filename, if needed, and the result
|
||||||
|
* is added to the directory, using the correct separator character.
|
||||||
|
*
|
||||||
|
* The directory should specify the directory where the module can be found.
|
||||||
|
* It can be %NULL or an empty string to indicate that the module is in a
|
||||||
|
* standard platform-specific directory, though this is not recommended
|
||||||
|
* since the wrong module may be found.
|
||||||
|
*
|
||||||
|
* For example, calling g_module_build_path() on a Linux system with a
|
||||||
|
* `directory` of `/lib` and a `module_name` of "mylibrary" will return
|
||||||
|
* `/lib/libmylibrary.so`. On a Windows system, using `\Windows` as the
|
||||||
|
* directory it will return `\Windows\mylibrary.dll`.
|
||||||
|
* @param directory the directory where the module is. This can be %NULL or the empty string to indicate that the standard platform-specific directories will be used, though that is not recommended
|
||||||
|
* @param module_name the name of the module
|
||||||
|
* @returns the complete path of the module, including the standard library prefix and suffix. This should be freed when no longer needed
|
||||||
|
*/
|
||||||
|
function module_build_path(directory: string | null, module_name: string): string;
|
||||||
|
/**
|
||||||
|
* Gets a string describing the last module error.
|
||||||
|
* @returns a string describing the last module error
|
||||||
|
*/
|
||||||
|
function module_error(): string;
|
||||||
|
function module_error_quark(): GLib.Quark;
|
||||||
|
/**
|
||||||
|
* Checks if modules are supported on the current platform.
|
||||||
|
* @returns %TRUE if modules are supported
|
||||||
|
*/
|
||||||
|
function module_supported(): boolean;
|
||||||
|
interface ModuleCheckInit {
|
||||||
|
(module: Module): string;
|
||||||
|
}
|
||||||
|
interface ModuleUnload {
|
||||||
|
(module: Module): void;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Flags passed to g_module_open().
|
||||||
|
* Note that these flags are not supported on all platforms.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Flags passed to g_module_open().
|
||||||
|
* Note that these flags are not supported on all platforms.
|
||||||
|
*/
|
||||||
|
export namespace ModuleFlags {
|
||||||
|
export const $gtype: GObject.GType<ModuleFlags>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum ModuleFlags {
|
||||||
|
/**
|
||||||
|
* specifies that symbols are only resolved when
|
||||||
|
* needed. The default action is to bind all symbols when the module
|
||||||
|
* is loaded.
|
||||||
|
*/
|
||||||
|
LAZY,
|
||||||
|
/**
|
||||||
|
* specifies that symbols in the module should
|
||||||
|
* not be added to the global name space. The default action on most
|
||||||
|
* platforms is to place symbols in the module in the global name space,
|
||||||
|
* which may cause conflicts with existing symbols.
|
||||||
|
*/
|
||||||
|
LOCAL,
|
||||||
|
/**
|
||||||
|
* mask for all flags.
|
||||||
|
*/
|
||||||
|
MASK,
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* The #GModule struct is an opaque data structure to represent a
|
||||||
|
* [dynamically-loaded module][glib-Dynamic-Loading-of-Modules].
|
||||||
|
* It should only be accessed via the following functions.
|
||||||
|
*/
|
||||||
|
abstract class Module {
|
||||||
|
static $gtype: GObject.GType<Module>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A portable way to build the filename of a module. The platform-specific
|
||||||
|
* prefix and suffix are added to the filename, if needed, and the result
|
||||||
|
* is added to the directory, using the correct separator character.
|
||||||
|
*
|
||||||
|
* The directory should specify the directory where the module can be found.
|
||||||
|
* It can be %NULL or an empty string to indicate that the module is in a
|
||||||
|
* standard platform-specific directory, though this is not recommended
|
||||||
|
* since the wrong module may be found.
|
||||||
|
*
|
||||||
|
* For example, calling g_module_build_path() on a Linux system with a
|
||||||
|
* `directory` of `/lib` and a `module_name` of "mylibrary" will return
|
||||||
|
* `/lib/libmylibrary.so`. On a Windows system, using `\Windows` as the
|
||||||
|
* directory it will return `\Windows\mylibrary.dll`.
|
||||||
|
* @param directory the directory where the module is. This can be %NULL or the empty string to indicate that the standard platform-specific directories will be used, though that is not recommended
|
||||||
|
* @param module_name the name of the module
|
||||||
|
*/
|
||||||
|
static build_path(directory: string | null, module_name: string): string;
|
||||||
|
/**
|
||||||
|
* Gets a string describing the last module error.
|
||||||
|
*/
|
||||||
|
static error(): string;
|
||||||
|
static error_quark(): GLib.Quark;
|
||||||
|
/**
|
||||||
|
* Checks if modules are supported on the current platform.
|
||||||
|
*/
|
||||||
|
static supported(): boolean;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Closes a module.
|
||||||
|
* @returns %TRUE on success
|
||||||
|
*/
|
||||||
|
close(): boolean;
|
||||||
|
/**
|
||||||
|
* Ensures that a module will never be unloaded.
|
||||||
|
* Any future g_module_close() calls on the module will be ignored.
|
||||||
|
*/
|
||||||
|
make_resident(): void;
|
||||||
|
/**
|
||||||
|
* Returns the filename that the module was opened with.
|
||||||
|
*
|
||||||
|
* If `module` refers to the application itself, "main" is returned.
|
||||||
|
* @returns the filename of the module
|
||||||
|
*/
|
||||||
|
name(): string;
|
||||||
|
/**
|
||||||
|
* Gets a symbol pointer from a module, such as one exported
|
||||||
|
* by %G_MODULE_EXPORT. Note that a valid symbol can be %NULL.
|
||||||
|
* @param symbol_name the name of the symbol to find
|
||||||
|
* @returns %TRUE on success
|
||||||
|
*/
|
||||||
|
symbol(symbol_name: string): [boolean, any];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 GModule;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://GModule' {
|
||||||
|
import GModule20 from 'gi://GModule?version=2.0';
|
||||||
|
export default GModule20;
|
||||||
|
}
|
||||||
|
// END
|
6876
@girs/gobject-2.0.d.ts
vendored
Normal file
6876
@girs/gobject-2.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
3382
@girs/graphene-1.0.d.ts
vendored
Normal file
3382
@girs/graphene-1.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
4123
@girs/gsk-4.0.d.ts
vendored
Normal file
4123
@girs/gsk-4.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
339522
@girs/gtk-3.0.d.ts
vendored
Normal file
339522
@girs/gtk-3.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
259435
@girs/gtk-4.0.d.ts
vendored
Normal file
259435
@girs/gtk-4.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
271
@girs/gtk4layershell-1.0.d.ts
vendored
Normal file
271
@girs/gtk4layershell-1.0.d.ts
vendored
Normal file
|
@ -0,0 +1,271 @@
|
||||||
|
/// <reference path="./gtk-4.0.d.ts" />
|
||||||
|
/// <reference path="./gsk-4.0.d.ts" />
|
||||||
|
/// <reference path="./graphene-1.0.d.ts" />
|
||||||
|
/// <reference path="./gobject-2.0.d.ts" />
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./gdk-4.0.d.ts" />
|
||||||
|
/// <reference path="./cairo-1.0.d.ts" />
|
||||||
|
/// <reference path="./cairo.d.ts" />
|
||||||
|
/// <reference path="./pangocairo-1.0.d.ts" />
|
||||||
|
/// <reference path="./pango-1.0.d.ts" />
|
||||||
|
/// <reference path="./harfbuzz-0.0.d.ts" />
|
||||||
|
/// <reference path="./freetype2-2.0.d.ts" />
|
||||||
|
/// <reference path="./gio-2.0.d.ts" />
|
||||||
|
/// <reference path="./gmodule-2.0.d.ts" />
|
||||||
|
/// <reference path="./gdkpixbuf-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://Gtk4LayerShell?version=1.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type Gtk from 'gi://Gtk?version=4.0';
|
||||||
|
import type Gsk from 'gi://Gsk?version=4.0';
|
||||||
|
import type Graphene from 'gi://Graphene?version=1.0';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type Gdk from 'gi://Gdk?version=4.0';
|
||||||
|
import type cairo from 'cairo';
|
||||||
|
import type PangoCairo from 'gi://PangoCairo?version=1.0';
|
||||||
|
import type Pango from 'gi://Pango?version=1.0';
|
||||||
|
import type HarfBuzz from 'gi://HarfBuzz?version=0.0';
|
||||||
|
import type freetype2 from 'gi://freetype2?version=2.0';
|
||||||
|
import type Gio from 'gi://Gio?version=2.0';
|
||||||
|
import type GModule from 'gi://GModule?version=2.0';
|
||||||
|
import type GdkPixbuf from 'gi://GdkPixbuf?version=2.0';
|
||||||
|
|
||||||
|
export namespace Gtk4LayerShell {
|
||||||
|
/**
|
||||||
|
* Gtk4LayerShell-1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
export namespace Edge {
|
||||||
|
export const $gtype: GObject.GType<Edge>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Edge {
|
||||||
|
/**
|
||||||
|
* The left edge of the screen.
|
||||||
|
*/
|
||||||
|
LEFT,
|
||||||
|
/**
|
||||||
|
* The right edge of the screen.
|
||||||
|
*/
|
||||||
|
RIGHT,
|
||||||
|
/**
|
||||||
|
* The top edge of the screen.
|
||||||
|
*/
|
||||||
|
TOP,
|
||||||
|
/**
|
||||||
|
* The bottom edge of the screen.
|
||||||
|
*/
|
||||||
|
BOTTOM,
|
||||||
|
/**
|
||||||
|
* Should not be used except to get the number of entries. (NOTE: may change in
|
||||||
|
* future releases as more entries are added)
|
||||||
|
*/
|
||||||
|
ENTRY_NUMBER,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace KeyboardMode {
|
||||||
|
export const $gtype: GObject.GType<KeyboardMode>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum KeyboardMode {
|
||||||
|
/**
|
||||||
|
* This window should not receive keyboard events.
|
||||||
|
*/
|
||||||
|
NONE,
|
||||||
|
/**
|
||||||
|
* This window should have exclusive focus if it is on the top or overlay layer.
|
||||||
|
*/
|
||||||
|
EXCLUSIVE,
|
||||||
|
/**
|
||||||
|
* The user should be able to focus and unfocues this window in an implementation
|
||||||
|
* defined way. Not supported for protocol version < 4.
|
||||||
|
*/
|
||||||
|
ON_DEMAND,
|
||||||
|
/**
|
||||||
|
* Should not be used except to get the number of entries. (NOTE: may change in
|
||||||
|
* future releases as more entries are added)
|
||||||
|
*/
|
||||||
|
ENTRY_NUMBER,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace Layer {
|
||||||
|
export const $gtype: GObject.GType<Layer>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Layer {
|
||||||
|
/**
|
||||||
|
* The background layer.
|
||||||
|
*/
|
||||||
|
BACKGROUND,
|
||||||
|
/**
|
||||||
|
* The bottom layer.
|
||||||
|
*/
|
||||||
|
BOTTOM,
|
||||||
|
/**
|
||||||
|
* The top layer.
|
||||||
|
*/
|
||||||
|
TOP,
|
||||||
|
/**
|
||||||
|
* The overlay layer.
|
||||||
|
*/
|
||||||
|
OVERLAY,
|
||||||
|
/**
|
||||||
|
* Should not be used except to get the number of entries. (NOTE: may change in
|
||||||
|
* future releases as more entries are added)
|
||||||
|
*/
|
||||||
|
ENTRY_NUMBER,
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* When auto exclusive zone is enabled, exclusive zone is automatically set to the
|
||||||
|
* size of the `window` + relevant margin. To disable auto exclusive zone, just set the
|
||||||
|
* exclusive zone to 0 or any other fixed value.
|
||||||
|
*
|
||||||
|
* NOTE: you can control the auto exclusive zone by changing the margin on the non-anchored
|
||||||
|
* edge. This behavior is specific to gtk4-layer-shell and not part of the underlying protocol
|
||||||
|
* @param window A layer surface.
|
||||||
|
*/
|
||||||
|
function auto_exclusive_zone_enable(window: Gtk.Window): void;
|
||||||
|
function auto_exclusive_zone_is_enabled(window: Gtk.Window): boolean;
|
||||||
|
function get_anchor(window: Gtk.Window, edge: Edge | null): boolean;
|
||||||
|
function get_exclusive_zone(window: Gtk.Window): number;
|
||||||
|
function get_keyboard_mode(window: Gtk.Window): KeyboardMode;
|
||||||
|
function get_layer(window: Gtk.Window): Layer;
|
||||||
|
function get_major_version(): number;
|
||||||
|
function get_margin(window: Gtk.Window, edge: Edge | null): number;
|
||||||
|
function get_micro_version(): number;
|
||||||
|
function get_minor_version(): number;
|
||||||
|
/**
|
||||||
|
* NOTE: To get which monitor the surface is actually on, use
|
||||||
|
* gdk_display_get_monitor_at_window().
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @returns the monitor this surface will/has requested to be on, can be %NULL.
|
||||||
|
*/
|
||||||
|
function get_monitor(window: Gtk.Window): Gdk.Monitor;
|
||||||
|
/**
|
||||||
|
* NOTE: this function does not return ownership of the string. Do not free the returned string.
|
||||||
|
* Future calls into the library may invalidate the returned string.
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @returns a reference to the namespace property. If namespace is unset, returns the default namespace("gtk4-layer-shell"). Never returns %NULL.
|
||||||
|
*/
|
||||||
|
function get_namespace(window: Gtk.Window): string;
|
||||||
|
/**
|
||||||
|
* May block for a Wayland roundtrip the first time it's called.
|
||||||
|
* @returns version of the zwlr_layer_shell_v1 protocol supported by the compositor or 0 if the protocol is not supported.
|
||||||
|
*/
|
||||||
|
function get_protocol_version(): number;
|
||||||
|
function get_zwlr_layer_surface_v1(window: Gtk.Window): any | null;
|
||||||
|
/**
|
||||||
|
* Set the `window` up to be a layer surface once it is mapped. this must be called before
|
||||||
|
* the `window` is realized.
|
||||||
|
* @param window A #GtkWindow to be turned into a layer surface.
|
||||||
|
*/
|
||||||
|
function init_for_window(window: Gtk.Window): void;
|
||||||
|
function is_layer_window(window: Gtk.Window): boolean;
|
||||||
|
/**
|
||||||
|
* May block for a Wayland roundtrip the first time it's called.
|
||||||
|
* @returns %TRUE if the platform is Wayland and Wayland compositor supports the zwlr_layer_shell_v1 protocol.
|
||||||
|
*/
|
||||||
|
function is_supported(): boolean;
|
||||||
|
/**
|
||||||
|
* Set whether `window` should be anchored to `edge`.
|
||||||
|
* - If two perpendicular edges are anchored, the surface with be anchored to that corner
|
||||||
|
* - If two opposite edges are anchored, the window will be stretched across the screen in that direction
|
||||||
|
*
|
||||||
|
* Default is %FALSE for each #GtkLayerShellEdge
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @param edge A #GtkLayerShellEdge this layer surface may be anchored to.
|
||||||
|
* @param anchor_to_edge Whether or not to anchor this layer surface to @edge.
|
||||||
|
*/
|
||||||
|
function set_anchor(window: Gtk.Window, edge: Edge | null, anchor_to_edge: boolean): void;
|
||||||
|
/**
|
||||||
|
* Has no effect unless the surface is anchored to an edge. Requests that the compositor
|
||||||
|
* does not place other surfaces within the given exclusive zone of the anchored edge.
|
||||||
|
* For example, a panel can request to not be covered by maximized windows. See
|
||||||
|
* wlr-layer-shell-unstable-v1.xml for details.
|
||||||
|
*
|
||||||
|
* Default is 0
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @param exclusive_zone The size of the exclusive zone.
|
||||||
|
*/
|
||||||
|
function set_exclusive_zone(window: Gtk.Window, exclusive_zone: number): void;
|
||||||
|
/**
|
||||||
|
* Sets if/when `window` should receive keyboard events from the compositor, see
|
||||||
|
* GtkLayerShellKeyboardMode for details.
|
||||||
|
*
|
||||||
|
* Default is %GTK_LAYER_SHELL_KEYBOARD_MODE_NONE
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @param mode The type of keyboard interactivity requested.
|
||||||
|
*/
|
||||||
|
function set_keyboard_mode(window: Gtk.Window, mode: KeyboardMode | null): void;
|
||||||
|
/**
|
||||||
|
* Set the "layer" on which the surface appears(controls if it is over top of or below other surfaces). The layer may
|
||||||
|
* be changed on-the-fly in the current version of the layer shell protocol, but on compositors that only support an
|
||||||
|
* older version the `window` is remapped so the change can take effect.
|
||||||
|
*
|
||||||
|
* Default is %GTK_LAYER_SHELL_LAYER_TOP
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @param layer The layer on which this surface appears.
|
||||||
|
*/
|
||||||
|
function set_layer(window: Gtk.Window, layer: Layer | null): void;
|
||||||
|
/**
|
||||||
|
* Set the margin for a specific `edge` of a `window`. Effects both surface's distance from
|
||||||
|
* the edge and its exclusive zone size(if auto exclusive zone enabled).
|
||||||
|
*
|
||||||
|
* Default is 0 for each #GtkLayerShellEdge
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @param edge The #GtkLayerShellEdge for which to set the margin.
|
||||||
|
* @param margin_size The margin for @edge to be set.
|
||||||
|
*/
|
||||||
|
function set_margin(window: Gtk.Window, edge: Edge | null, margin_size: number): void;
|
||||||
|
/**
|
||||||
|
* Set the output for the window to be placed on, or %NULL to let the compositor choose.
|
||||||
|
* If the window is currently mapped, it will get remapped so the change can take effect.
|
||||||
|
*
|
||||||
|
* Default is %NULL
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @param monitor The output this layer surface will be placed on(%NULL to let the compositor decide).
|
||||||
|
*/
|
||||||
|
function set_monitor(window: Gtk.Window, monitor: Gdk.Monitor): void;
|
||||||
|
/**
|
||||||
|
* Set the "namespace" of the surface.
|
||||||
|
*
|
||||||
|
* No one is quite sure what this is for, but it probably should be something generic
|
||||||
|
* ("panel", "osk", etc). The `name_space` string is copied, and caller maintains
|
||||||
|
* ownership of original. If the window is currently mapped, it will get remapped so
|
||||||
|
* the change can take effect.
|
||||||
|
*
|
||||||
|
* Default is "gtk4-layer-shell" (which will be used if set to %NULL)
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @param name_space The namespace of this layer surface.
|
||||||
|
*/
|
||||||
|
function set_namespace(window: Gtk.Window, name_space: string): void;
|
||||||
|
/**
|
||||||
|
* 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 Gtk4LayerShell;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://Gtk4LayerShell' {
|
||||||
|
import Gtk4LayerShell10 from 'gi://Gtk4LayerShell?version=1.0';
|
||||||
|
export default Gtk4LayerShell10;
|
||||||
|
}
|
||||||
|
// END
|
151
@girs/gtk4sessionlock-1.0.d.ts
vendored
Normal file
151
@girs/gtk4sessionlock-1.0.d.ts
vendored
Normal file
|
@ -0,0 +1,151 @@
|
||||||
|
/// <reference path="./gtk-4.0.d.ts" />
|
||||||
|
/// <reference path="./gsk-4.0.d.ts" />
|
||||||
|
/// <reference path="./graphene-1.0.d.ts" />
|
||||||
|
/// <reference path="./gobject-2.0.d.ts" />
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./gdk-4.0.d.ts" />
|
||||||
|
/// <reference path="./cairo-1.0.d.ts" />
|
||||||
|
/// <reference path="./cairo.d.ts" />
|
||||||
|
/// <reference path="./pangocairo-1.0.d.ts" />
|
||||||
|
/// <reference path="./pango-1.0.d.ts" />
|
||||||
|
/// <reference path="./harfbuzz-0.0.d.ts" />
|
||||||
|
/// <reference path="./freetype2-2.0.d.ts" />
|
||||||
|
/// <reference path="./gio-2.0.d.ts" />
|
||||||
|
/// <reference path="./gmodule-2.0.d.ts" />
|
||||||
|
/// <reference path="./gdkpixbuf-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://Gtk4SessionLock?version=1.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type Gtk from 'gi://Gtk?version=4.0';
|
||||||
|
import type Gsk from 'gi://Gsk?version=4.0';
|
||||||
|
import type Graphene from 'gi://Graphene?version=1.0';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type Gdk from 'gi://Gdk?version=4.0';
|
||||||
|
import type cairo from 'cairo';
|
||||||
|
import type PangoCairo from 'gi://PangoCairo?version=1.0';
|
||||||
|
import type Pango from 'gi://Pango?version=1.0';
|
||||||
|
import type HarfBuzz from 'gi://HarfBuzz?version=0.0';
|
||||||
|
import type freetype2 from 'gi://freetype2?version=2.0';
|
||||||
|
import type Gio from 'gi://Gio?version=2.0';
|
||||||
|
import type GModule from 'gi://GModule?version=2.0';
|
||||||
|
import type GdkPixbuf from 'gi://GdkPixbuf?version=2.0';
|
||||||
|
|
||||||
|
export namespace Gtk4SessionLock {
|
||||||
|
/**
|
||||||
|
* Gtk4SessionLock-1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* May block for a Wayland roundtrip the first time it's called.
|
||||||
|
* @returns %TRUE if the platform is Wayland and Wayland compositor supports the Session Lock protocol.
|
||||||
|
*/
|
||||||
|
function is_supported(): boolean;
|
||||||
|
namespace Instance {
|
||||||
|
// Signal callback interfaces
|
||||||
|
|
||||||
|
interface Failed {
|
||||||
|
(): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface Locked {
|
||||||
|
(): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface Unlocked {
|
||||||
|
(): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* An instance of the object used to control locking the screen.
|
||||||
|
* Multiple instances can exist at once, but only one can be locked at a time.
|
||||||
|
*/
|
||||||
|
class Instance extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Instance>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Instance.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](): Instance;
|
||||||
|
|
||||||
|
// Signals
|
||||||
|
|
||||||
|
connect(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
connect_after(id: string, callback: (...args: any[]) => any): number;
|
||||||
|
emit(id: string, ...args: any[]): void;
|
||||||
|
connect(signal: 'failed', callback: (_source: this) => void): number;
|
||||||
|
connect_after(signal: 'failed', callback: (_source: this) => void): number;
|
||||||
|
emit(signal: 'failed'): void;
|
||||||
|
connect(signal: 'locked', callback: (_source: this) => void): number;
|
||||||
|
connect_after(signal: 'locked', callback: (_source: this) => void): number;
|
||||||
|
emit(signal: 'locked'): void;
|
||||||
|
connect(signal: 'unlocked', callback: (_source: this) => void): number;
|
||||||
|
connect_after(signal: 'unlocked', callback: (_source: this) => void): number;
|
||||||
|
emit(signal: 'unlocked'): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This should be called with a different window once for each monitor immediately after calling
|
||||||
|
* gtk_session_lock_lock(). Hiding a window that is active on a monitor or not letting a window be resized by the
|
||||||
|
* library may result in a Wayland protocol error.
|
||||||
|
* @param window The GTK Window to use as a lock surface
|
||||||
|
* @param monitor The monitor to show it on
|
||||||
|
*/
|
||||||
|
assign_window_to_monitor(window: Gtk.Window, monitor: Gdk.Monitor): void;
|
||||||
|
/**
|
||||||
|
* Returns if this instance currently holds a lock.
|
||||||
|
*/
|
||||||
|
is_locked(): boolean;
|
||||||
|
/**
|
||||||
|
* Lock the screen. This should be called before assigning any windows to monitors. If this function fails the ::failed
|
||||||
|
* signal is emitted, if it succeeds the ::locked signal is emitted. The ::failed signal may be emitted before the
|
||||||
|
* function returns (for example, if another #GtkSessionLockInstance holds a lock) or later (if another process holds a
|
||||||
|
* lock). The only case where neither signal is triggered is if the instance is already locked.
|
||||||
|
* @returns false on immediate fail, true if lock acquisition was successfully started
|
||||||
|
*/
|
||||||
|
lock(): boolean;
|
||||||
|
/**
|
||||||
|
* If the screen is locked by this instance unlocks it and fires ::unlocked. Otherwise has no effect
|
||||||
|
*/
|
||||||
|
unlock(): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type InstanceClass = typeof Instance;
|
||||||
|
/**
|
||||||
|
* 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 Gtk4SessionLock;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://Gtk4SessionLock' {
|
||||||
|
import Gtk4SessionLock10 from 'gi://Gtk4SessionLock?version=1.0';
|
||||||
|
export default Gtk4SessionLock10;
|
||||||
|
}
|
||||||
|
// END
|
286
@girs/gtklayershell-0.1.d.ts
vendored
Normal file
286
@girs/gtklayershell-0.1.d.ts
vendored
Normal file
|
@ -0,0 +1,286 @@
|
||||||
|
/// <reference path="./gtk-3.0.d.ts" />
|
||||||
|
/// <reference path="./xlib-2.0.d.ts" />
|
||||||
|
/// <reference path="./gdk-3.0.d.ts" />
|
||||||
|
/// <reference path="./cairo-1.0.d.ts" />
|
||||||
|
/// <reference path="./cairo.d.ts" />
|
||||||
|
/// <reference path="./gobject-2.0.d.ts" />
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./pango-1.0.d.ts" />
|
||||||
|
/// <reference path="./harfbuzz-0.0.d.ts" />
|
||||||
|
/// <reference path="./freetype2-2.0.d.ts" />
|
||||||
|
/// <reference path="./gio-2.0.d.ts" />
|
||||||
|
/// <reference path="./gmodule-2.0.d.ts" />
|
||||||
|
/// <reference path="./gdkpixbuf-2.0.d.ts" />
|
||||||
|
/// <reference path="./atk-1.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://GtkLayerShell?version=0.1' {
|
||||||
|
// Module dependencies
|
||||||
|
import type Gtk from 'gi://Gtk?version=3.0';
|
||||||
|
import type xlib from 'gi://xlib?version=2.0';
|
||||||
|
import type Gdk from 'gi://Gdk?version=3.0';
|
||||||
|
import type cairo from 'cairo';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type Pango from 'gi://Pango?version=1.0';
|
||||||
|
import type HarfBuzz from 'gi://HarfBuzz?version=0.0';
|
||||||
|
import type freetype2 from 'gi://freetype2?version=2.0';
|
||||||
|
import type Gio from 'gi://Gio?version=2.0';
|
||||||
|
import type GModule from 'gi://GModule?version=2.0';
|
||||||
|
import type GdkPixbuf from 'gi://GdkPixbuf?version=2.0';
|
||||||
|
import type Atk from 'gi://Atk?version=1.0';
|
||||||
|
|
||||||
|
export namespace GtkLayerShell {
|
||||||
|
/**
|
||||||
|
* GtkLayerShell-0.1
|
||||||
|
*/
|
||||||
|
|
||||||
|
export namespace Edge {
|
||||||
|
export const $gtype: GObject.GType<Edge>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Edge {
|
||||||
|
/**
|
||||||
|
* The left edge of the screen.
|
||||||
|
*/
|
||||||
|
LEFT,
|
||||||
|
/**
|
||||||
|
* The right edge of the screen.
|
||||||
|
*/
|
||||||
|
RIGHT,
|
||||||
|
/**
|
||||||
|
* The top edge of the screen.
|
||||||
|
*/
|
||||||
|
TOP,
|
||||||
|
/**
|
||||||
|
* The bottom edge of the screen.
|
||||||
|
*/
|
||||||
|
BOTTOM,
|
||||||
|
/**
|
||||||
|
* Should not be used except to get the number of entries. (NOTE: may change in
|
||||||
|
* future releases as more entries are added)
|
||||||
|
*/
|
||||||
|
ENTRY_NUMBER,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace KeyboardMode {
|
||||||
|
export const $gtype: GObject.GType<KeyboardMode>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum KeyboardMode {
|
||||||
|
/**
|
||||||
|
* This window should not receive keyboard events.
|
||||||
|
*/
|
||||||
|
NONE,
|
||||||
|
/**
|
||||||
|
* This window should have exclusive focus if it is on the top or overlay layer.
|
||||||
|
*/
|
||||||
|
EXCLUSIVE,
|
||||||
|
/**
|
||||||
|
* The user should be able to focus and unfocues this window in an implementation
|
||||||
|
* defined way. Not supported for protocol version < 4.
|
||||||
|
*/
|
||||||
|
ON_DEMAND,
|
||||||
|
/**
|
||||||
|
* Should not be used except to get the number of entries. (NOTE: may change in
|
||||||
|
* future releases as more entries are added)
|
||||||
|
*/
|
||||||
|
ENTRY_NUMBER,
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace Layer {
|
||||||
|
export const $gtype: GObject.GType<Layer>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Layer {
|
||||||
|
/**
|
||||||
|
* The background layer.
|
||||||
|
*/
|
||||||
|
BACKGROUND,
|
||||||
|
/**
|
||||||
|
* The bottom layer.
|
||||||
|
*/
|
||||||
|
BOTTOM,
|
||||||
|
/**
|
||||||
|
* The top layer.
|
||||||
|
*/
|
||||||
|
TOP,
|
||||||
|
/**
|
||||||
|
* The overlay layer.
|
||||||
|
*/
|
||||||
|
OVERLAY,
|
||||||
|
/**
|
||||||
|
* Should not be used except to get the number of entries. (NOTE: may change in
|
||||||
|
* future releases as more entries are added)
|
||||||
|
*/
|
||||||
|
ENTRY_NUMBER,
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* When auto exclusive zone is enabled, exclusive zone is automatically set to the
|
||||||
|
* size of the `window` + relevant margin. To disable auto exclusive zone, just set the
|
||||||
|
* exclusive zone to 0 or any other fixed value.
|
||||||
|
*
|
||||||
|
* NOTE: you can control the auto exclusive zone by changing the margin on the non-anchored
|
||||||
|
* edge. This behavior is specific to gtk-layer-shell and not part of the underlying protocol
|
||||||
|
* @param window A layer surface.
|
||||||
|
*/
|
||||||
|
function auto_exclusive_zone_enable(window: Gtk.Window): void;
|
||||||
|
function auto_exclusive_zone_is_enabled(window: Gtk.Window): boolean;
|
||||||
|
function get_anchor(window: Gtk.Window, edge: Edge | null): boolean;
|
||||||
|
function get_exclusive_zone(window: Gtk.Window): number;
|
||||||
|
function get_keyboard_interactivity(window: Gtk.Window): boolean;
|
||||||
|
function get_keyboard_mode(window: Gtk.Window): KeyboardMode;
|
||||||
|
function get_layer(window: Gtk.Window): Layer;
|
||||||
|
function get_major_version(): number;
|
||||||
|
function get_margin(window: Gtk.Window, edge: Edge | null): number;
|
||||||
|
function get_micro_version(): number;
|
||||||
|
function get_minor_version(): number;
|
||||||
|
/**
|
||||||
|
* NOTE: To get which monitor the surface is actually on, use
|
||||||
|
* gdk_display_get_monitor_at_window().
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @returns the monitor this surface will/has requested to be on, can be %NULL.
|
||||||
|
*/
|
||||||
|
function get_monitor(window: Gtk.Window): Gdk.Monitor;
|
||||||
|
/**
|
||||||
|
* NOTE: this function does not return ownership of the string. Do not free the returned string.
|
||||||
|
* Future calls into the library may invalidate the returned string.
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @returns a reference to the namespace property. If namespace is unset, returns the default namespace ("gtk-layer-shell"). Never returns %NULL.
|
||||||
|
*/
|
||||||
|
function get_namespace(window: Gtk.Window): string;
|
||||||
|
/**
|
||||||
|
* May block for a Wayland roundtrip the first time it's called.
|
||||||
|
* @returns version of the zwlr_layer_shell_v1 protocol supported by the compositor or 0 if the protocol is not supported.
|
||||||
|
*/
|
||||||
|
function get_protocol_version(): number;
|
||||||
|
function get_zwlr_layer_surface_v1(window: Gtk.Window): any | null;
|
||||||
|
/**
|
||||||
|
* Set the `window` up to be a layer surface once it is mapped. this must be called before
|
||||||
|
* the `window` is realized.
|
||||||
|
* @param window A #GtkWindow to be turned into a layer surface.
|
||||||
|
*/
|
||||||
|
function init_for_window(window: Gtk.Window): void;
|
||||||
|
function is_layer_window(window: Gtk.Window): boolean;
|
||||||
|
/**
|
||||||
|
* May block for a Wayland roundtrip the first time it's called.
|
||||||
|
* @returns %TRUE if the platform is Wayland and Wayland compositor supports the zwlr_layer_shell_v1 protocol.
|
||||||
|
*/
|
||||||
|
function is_supported(): boolean;
|
||||||
|
/**
|
||||||
|
* Set whether `window` should be anchored to `edge`.
|
||||||
|
* - If two perpendicular edges are anchored, the surface with be anchored to that corner
|
||||||
|
* - If two opposite edges are anchored, the window will be stretched across the screen in that direction
|
||||||
|
*
|
||||||
|
* Default is %FALSE for each #GtkLayerShellEdge
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @param edge A #GtkLayerShellEdge this layer surface may be anchored to.
|
||||||
|
* @param anchor_to_edge Whether or not to anchor this layer surface to @edge.
|
||||||
|
*/
|
||||||
|
function set_anchor(window: Gtk.Window, edge: Edge | null, anchor_to_edge: boolean): void;
|
||||||
|
/**
|
||||||
|
* Has no effect unless the surface is anchored to an edge. Requests that the compositor
|
||||||
|
* does not place other surfaces within the given exclusive zone of the anchored edge.
|
||||||
|
* For example, a panel can request to not be covered by maximized windows. See
|
||||||
|
* wlr-layer-shell-unstable-v1.xml for details.
|
||||||
|
*
|
||||||
|
* Default is 0
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @param exclusive_zone The size of the exclusive zone.
|
||||||
|
*/
|
||||||
|
function set_exclusive_zone(window: Gtk.Window, exclusive_zone: number): void;
|
||||||
|
/**
|
||||||
|
* Whether the `window` should receive keyboard events from the compositor.
|
||||||
|
*
|
||||||
|
* Default is %FALSE
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @param interactivity Whether the layer surface should receive keyboard events.
|
||||||
|
*/
|
||||||
|
function set_keyboard_interactivity(window: Gtk.Window, interactivity: boolean): void;
|
||||||
|
/**
|
||||||
|
* Sets if/when `window` should receive keyboard events from the compositor, see
|
||||||
|
* GtkLayerShellKeyboardMode for details.
|
||||||
|
*
|
||||||
|
* Default is %GTK_LAYER_SHELL_KEYBOARD_MODE_NONE
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @param mode The type of keyboard interactivity requested.
|
||||||
|
*/
|
||||||
|
function set_keyboard_mode(window: Gtk.Window, mode: KeyboardMode | null): void;
|
||||||
|
/**
|
||||||
|
* Set the "layer" on which the surface appears (controls if it is over top of or below other surfaces). The layer may
|
||||||
|
* be changed on-the-fly in the current version of the layer shell protocol, but on compositors that only support an
|
||||||
|
* older version the `window` is remapped so the change can take effect.
|
||||||
|
*
|
||||||
|
* Default is %GTK_LAYER_SHELL_LAYER_TOP
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @param layer The layer on which this surface appears.
|
||||||
|
*/
|
||||||
|
function set_layer(window: Gtk.Window, layer: Layer | null): void;
|
||||||
|
/**
|
||||||
|
* Set the margin for a specific `edge` of a `window`. Effects both surface's distance from
|
||||||
|
* the edge and its exclusive zone size (if auto exclusive zone enabled).
|
||||||
|
*
|
||||||
|
* Default is 0 for each #GtkLayerShellEdge
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @param edge The #GtkLayerShellEdge for which to set the margin.
|
||||||
|
* @param margin_size The margin for @edge to be set.
|
||||||
|
*/
|
||||||
|
function set_margin(window: Gtk.Window, edge: Edge | null, margin_size: number): void;
|
||||||
|
/**
|
||||||
|
* Set the output for the window to be placed on, or %NULL to let the compositor choose.
|
||||||
|
* If the window is currently mapped, it will get remapped so the change can take effect.
|
||||||
|
*
|
||||||
|
* Default is %NULL
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @param monitor The output this layer surface will be placed on (%NULL to let the compositor decide).
|
||||||
|
*/
|
||||||
|
function set_monitor(window: Gtk.Window, monitor: Gdk.Monitor): void;
|
||||||
|
/**
|
||||||
|
* Set the "namespace" of the surface.
|
||||||
|
*
|
||||||
|
* No one is quite sure what this is for, but it probably should be something generic
|
||||||
|
* ("panel", "osk", etc). The `name_space` string is copied, and caller maintains
|
||||||
|
* ownership of original. If the window is currently mapped, it will get remapped so
|
||||||
|
* the change can take effect.
|
||||||
|
*
|
||||||
|
* Default is "gtk-layer-shell" (which will be used if set to %NULL)
|
||||||
|
* @param window A layer surface.
|
||||||
|
* @param name_space The namespace of this layer surface.
|
||||||
|
*/
|
||||||
|
function set_namespace(window: Gtk.Window, name_space: string): void;
|
||||||
|
/**
|
||||||
|
* Commits a surface state if there's no pending commit scheduled by the GTK.
|
||||||
|
* You almost never need to call this; the only known case is when the surface is in a state
|
||||||
|
* where it does not receive frame callbacks and the regular deferred commit mechanism
|
||||||
|
* is unavailable.
|
||||||
|
* @param window A layer surface.
|
||||||
|
*/
|
||||||
|
function try_force_commit(window: Gtk.Window): void;
|
||||||
|
/**
|
||||||
|
* 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 GtkLayerShell;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://GtkLayerShell' {
|
||||||
|
import GtkLayerShell01 from 'gi://GtkLayerShell?version=0.1';
|
||||||
|
export default GtkLayerShell01;
|
||||||
|
}
|
||||||
|
// END
|
9626
@girs/harfbuzz-0.0.d.ts
vendored
Normal file
9626
@girs/harfbuzz-0.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
8
@girs/index.d.ts
vendored
Normal file
8
@girs/index.d.ts
vendored
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
/**
|
||||||
|
* This file exports all type definitions.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import './gjs.d.ts';
|
||||||
|
import './dom.d.ts';
|
||||||
|
import './gi.d.ts';
|
||||||
|
import './console.d.ts';
|
3086
@girs/json-1.0.d.ts
vendored
Normal file
3086
@girs/json-1.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
105
@girs/libxml2-2.0.d.ts
vendored
Normal file
105
@girs/libxml2-2.0.d.ts
vendored
Normal file
|
@ -0,0 +1,105 @@
|
||||||
|
/// <reference path="./gobject-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://libxml2?version=2.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
export namespace libxml2 {
|
||||||
|
/**
|
||||||
|
* libxml2-2.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
function dummy(): void;
|
||||||
|
class Node {
|
||||||
|
static $gtype: GObject.GType<Node>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class NodePtr {
|
||||||
|
static $gtype: GObject.GType<NodePtr>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Doc {
|
||||||
|
static $gtype: GObject.GType<Doc>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class DocPtr {
|
||||||
|
static $gtype: GObject.GType<DocPtr>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class NsPtr {
|
||||||
|
static $gtype: GObject.GType<NsPtr>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Char {
|
||||||
|
static $gtype: GObject.GType<Char>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class TextWriter {
|
||||||
|
static $gtype: GObject.GType<TextWriter>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class TextReader {
|
||||||
|
static $gtype: GObject.GType<TextReader>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 libxml2;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://libxml2' {
|
||||||
|
import Libxml220 from 'gi://libxml2?version=2.0';
|
||||||
|
export default Libxml220;
|
||||||
|
}
|
||||||
|
// END
|
32917
@girs/nm-1.0.d.ts
vendored
Normal file
32917
@girs/nm-1.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
9203
@girs/pango-1.0.d.ts
vendored
Normal file
9203
@girs/pango-1.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
450
@girs/pangocairo-1.0.d.ts
vendored
Normal file
450
@girs/pangocairo-1.0.d.ts
vendored
Normal file
|
@ -0,0 +1,450 @@
|
||||||
|
/// <reference path="./cairo-1.0.d.ts" />
|
||||||
|
/// <reference path="./cairo.d.ts" />
|
||||||
|
/// <reference path="./gobject-2.0.d.ts" />
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./pango-1.0.d.ts" />
|
||||||
|
/// <reference path="./harfbuzz-0.0.d.ts" />
|
||||||
|
/// <reference path="./freetype2-2.0.d.ts" />
|
||||||
|
/// <reference path="./gio-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://PangoCairo?version=1.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type cairo from 'cairo';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type Pango from 'gi://Pango?version=1.0';
|
||||||
|
import type HarfBuzz from 'gi://HarfBuzz?version=0.0';
|
||||||
|
import type freetype2 from 'gi://freetype2?version=2.0';
|
||||||
|
import type Gio from 'gi://Gio?version=2.0';
|
||||||
|
import type GModule from 'gi://GModule?version=2.0';
|
||||||
|
|
||||||
|
export namespace PangoCairo {
|
||||||
|
/**
|
||||||
|
* PangoCairo-1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieves any font rendering options previously set with
|
||||||
|
* [func`PangoCairo`.context_set_font_options].
|
||||||
|
*
|
||||||
|
* This function does not report options that are derived from
|
||||||
|
* the target surface by [func`update_context]`.
|
||||||
|
* @param context a `PangoContext`, from a pangocairo font map
|
||||||
|
* @returns the font options previously set on the context, or %NULL if no options have been set. This value is owned by the context and must not be modified or freed.
|
||||||
|
*/
|
||||||
|
function context_get_font_options(context: Pango.Context): cairo.FontOptions | null;
|
||||||
|
/**
|
||||||
|
* Gets the resolution for the context.
|
||||||
|
*
|
||||||
|
* See [func`PangoCairo`.context_set_resolution]
|
||||||
|
* @param context a `PangoContext`, from a pangocairo font map
|
||||||
|
* @returns the resolution in "dots per inch". A negative value will be returned if no resolution has previously been set.
|
||||||
|
*/
|
||||||
|
function context_get_resolution(context: Pango.Context): number;
|
||||||
|
/**
|
||||||
|
* Sets the font options used when rendering text with this context.
|
||||||
|
*
|
||||||
|
* These options override any options that [func`update_context]`
|
||||||
|
* derives from the target surface.
|
||||||
|
* @param context a `PangoContext`, from a pangocairo font map
|
||||||
|
* @param options a `cairo_font_options_t`, or %NULL to unset any previously set options. A copy is made.
|
||||||
|
*/
|
||||||
|
function context_set_font_options(context: Pango.Context, options?: cairo.FontOptions | null): void;
|
||||||
|
/**
|
||||||
|
* Sets the resolution for the context.
|
||||||
|
*
|
||||||
|
* This is a scale factor between points specified in a `PangoFontDescription`
|
||||||
|
* and Cairo units. The default value is 96, meaning that a 10 point font will
|
||||||
|
* be 13 units high. (10 * 96. / 72. = 13.3).
|
||||||
|
* @param context a `PangoContext`, from a pangocairo font map
|
||||||
|
* @param dpi the resolution in "dots per inch". (Physical inches aren't actually involved; the terminology is conventional.) A 0 or negative value means to use the resolution from the font map.
|
||||||
|
*/
|
||||||
|
function context_set_resolution(context: Pango.Context, dpi: number): void;
|
||||||
|
/**
|
||||||
|
* Sets callback function for context to use for rendering attributes
|
||||||
|
* of type %PANGO_ATTR_SHAPE.
|
||||||
|
*
|
||||||
|
* See `PangoCairoShapeRendererFunc` for details.
|
||||||
|
* @param context a `PangoContext`, from a pangocairo font map
|
||||||
|
* @param func Callback function for rendering attributes of type %PANGO_ATTR_SHAPE, or %NULL to disable shape rendering.
|
||||||
|
* @param dnotify Callback that will be called when the context is freed to release @data
|
||||||
|
*/
|
||||||
|
function context_set_shape_renderer(
|
||||||
|
context: Pango.Context,
|
||||||
|
func?: ShapeRendererFunc | null,
|
||||||
|
dnotify?: GLib.DestroyNotify | null,
|
||||||
|
): void;
|
||||||
|
/**
|
||||||
|
* Creates a context object set up to match the current transformation
|
||||||
|
* and target surface of the Cairo context.
|
||||||
|
*
|
||||||
|
* This context can then be
|
||||||
|
* used to create a layout using [ctor`Pango`.Layout.new].
|
||||||
|
*
|
||||||
|
* This function is a convenience function that creates a context using
|
||||||
|
* the default font map, then updates it to `cr`. If you just need to
|
||||||
|
* create a layout for use with `cr` and do not need to access `PangoContext`
|
||||||
|
* directly, you can use [func`create_layout]` instead.
|
||||||
|
* @param cr a Cairo context
|
||||||
|
* @returns the newly created `PangoContext`
|
||||||
|
*/
|
||||||
|
function create_context(cr: cairo.Context): Pango.Context;
|
||||||
|
/**
|
||||||
|
* Creates a layout object set up to match the current transformation
|
||||||
|
* and target surface of the Cairo context.
|
||||||
|
*
|
||||||
|
* This layout can then be used for text measurement with functions
|
||||||
|
* like [method`Pango`.Layout.get_size] or drawing with functions like
|
||||||
|
* [func`show_layout]`. If you change the transformation or target
|
||||||
|
* surface for `cr,` you need to call [func`update_layout]`.
|
||||||
|
*
|
||||||
|
* This function is the most convenient way to use Cairo with Pango,
|
||||||
|
* however it is slightly inefficient since it creates a separate
|
||||||
|
* `PangoContext` object for each layout. This might matter in an
|
||||||
|
* application that was laying out large amounts of text.
|
||||||
|
* @param cr a Cairo context
|
||||||
|
* @returns the newly created `PangoLayout`
|
||||||
|
*/
|
||||||
|
function create_layout(cr: cairo.Context): Pango.Layout;
|
||||||
|
/**
|
||||||
|
* Add a squiggly line to the current path in the specified cairo context that
|
||||||
|
* approximately covers the given rectangle in the style of an underline used
|
||||||
|
* to indicate a spelling error.
|
||||||
|
*
|
||||||
|
* The width of the underline is rounded to an integer number of up/down
|
||||||
|
* segments and the resulting rectangle is centered in the original rectangle.
|
||||||
|
* @param cr a Cairo context
|
||||||
|
* @param x The X coordinate of one corner of the rectangle
|
||||||
|
* @param y The Y coordinate of one corner of the rectangle
|
||||||
|
* @param width Non-negative width of the rectangle
|
||||||
|
* @param height Non-negative height of the rectangle
|
||||||
|
*/
|
||||||
|
function error_underline_path(cr: cairo.Context, x: number, y: number, width: number, height: number): void;
|
||||||
|
/**
|
||||||
|
* Gets a default `PangoCairoFontMap` to use with Cairo.
|
||||||
|
*
|
||||||
|
* Note that the type of the returned object will depend on the
|
||||||
|
* particular font backend Cairo was compiled to use; you generally
|
||||||
|
* should only use the `PangoFontMap` and `PangoCairoFontMap`
|
||||||
|
* interfaces on the returned object.
|
||||||
|
*
|
||||||
|
* The default Cairo fontmap can be changed by using
|
||||||
|
* [method`PangoCairo`.FontMap.set_default]. This can be used to
|
||||||
|
* change the Cairo font backend that the default fontmap uses
|
||||||
|
* for example.
|
||||||
|
*
|
||||||
|
* Note that since Pango 1.32.6, the default fontmap is per-thread.
|
||||||
|
* Each thread gets its own default fontmap. In this way, PangoCairo
|
||||||
|
* can be used safely from multiple threads.
|
||||||
|
* @returns the default PangoCairo fontmap for the current thread. This object is owned by Pango and must not be freed.
|
||||||
|
*/
|
||||||
|
function font_map_get_default(): Pango.FontMap;
|
||||||
|
/**
|
||||||
|
* Creates a new `PangoCairoFontMap` object.
|
||||||
|
*
|
||||||
|
* A fontmap is used to cache information about available fonts,
|
||||||
|
* and holds certain global parameters such as the resolution.
|
||||||
|
* In most cases, you can use `func`PangoCairo`.font_map_get_default]
|
||||||
|
* instead.
|
||||||
|
*
|
||||||
|
* Note that the type of the returned object will depend
|
||||||
|
* on the particular font backend Cairo was compiled to use;
|
||||||
|
* You generally should only use the `PangoFontMap` and
|
||||||
|
* `PangoCairoFontMap` interfaces on the returned object.
|
||||||
|
*
|
||||||
|
* You can override the type of backend returned by using an
|
||||||
|
* environment variable %PANGOCAIRO_BACKEND. Supported types,
|
||||||
|
* based on your build, are fc (fontconfig), win32, and coretext.
|
||||||
|
* If requested type is not available, NULL is returned. Ie.
|
||||||
|
* this is only useful for testing, when at least two backends
|
||||||
|
* are compiled in.
|
||||||
|
* @returns the newly allocated `PangoFontMap`, which should be freed with g_object_unref().
|
||||||
|
*/
|
||||||
|
function font_map_new(): Pango.FontMap;
|
||||||
|
/**
|
||||||
|
* Creates a new `PangoCairoFontMap` object of the type suitable
|
||||||
|
* to be used with cairo font backend of type `fonttype`.
|
||||||
|
*
|
||||||
|
* In most cases one should simply use [func`PangoCairo`.FontMap.new], or
|
||||||
|
* in fact in most of those cases, just use [func`PangoCairo`.FontMap.get_default].
|
||||||
|
* @param fonttype desired #cairo_font_type_t
|
||||||
|
* @returns the newly allocated `PangoFontMap` of suitable type which should be freed with g_object_unref(), or %NULL if the requested cairo font backend is not supported / compiled in.
|
||||||
|
*/
|
||||||
|
function font_map_new_for_font_type(fonttype: cairo.FontType | null): Pango.FontMap | null;
|
||||||
|
/**
|
||||||
|
* Adds the glyphs in `glyphs` to the current path in the specified
|
||||||
|
* cairo context.
|
||||||
|
*
|
||||||
|
* The origin of the glyphs (the left edge of the baseline)
|
||||||
|
* will be at the current point of the cairo context.
|
||||||
|
* @param cr a Cairo context
|
||||||
|
* @param font a `PangoFont` from a `PangoCairoFontMap`
|
||||||
|
* @param glyphs a `PangoGlyphString`
|
||||||
|
*/
|
||||||
|
function glyph_string_path(cr: cairo.Context, font: Pango.Font, glyphs: Pango.GlyphString): void;
|
||||||
|
/**
|
||||||
|
* Adds the text in `PangoLayoutLine` to the current path in the
|
||||||
|
* specified cairo context.
|
||||||
|
*
|
||||||
|
* The origin of the glyphs (the left edge of the line) will be
|
||||||
|
* at the current point of the cairo context.
|
||||||
|
* @param cr a Cairo context
|
||||||
|
* @param line a `PangoLayoutLine`
|
||||||
|
*/
|
||||||
|
function layout_line_path(cr: cairo.Context, line: Pango.LayoutLine): void;
|
||||||
|
/**
|
||||||
|
* Adds the text in a `PangoLayout` to the current path in the
|
||||||
|
* specified cairo context.
|
||||||
|
*
|
||||||
|
* The top-left corner of the `PangoLayout` will be at the
|
||||||
|
* current point of the cairo context.
|
||||||
|
* @param cr a Cairo context
|
||||||
|
* @param layout a Pango layout
|
||||||
|
*/
|
||||||
|
function layout_path(cr: cairo.Context, layout: Pango.Layout): void;
|
||||||
|
/**
|
||||||
|
* Draw a squiggly line in the specified cairo context that approximately
|
||||||
|
* covers the given rectangle in the style of an underline used to indicate a
|
||||||
|
* spelling error.
|
||||||
|
*
|
||||||
|
* The width of the underline is rounded to an integer
|
||||||
|
* number of up/down segments and the resulting rectangle is centered in the
|
||||||
|
* original rectangle.
|
||||||
|
* @param cr a Cairo context
|
||||||
|
* @param x The X coordinate of one corner of the rectangle
|
||||||
|
* @param y The Y coordinate of one corner of the rectangle
|
||||||
|
* @param width Non-negative width of the rectangle
|
||||||
|
* @param height Non-negative height of the rectangle
|
||||||
|
*/
|
||||||
|
function show_error_underline(cr: cairo.Context, x: number, y: number, width: number, height: number): void;
|
||||||
|
/**
|
||||||
|
* Draws the glyphs in `glyph_item` in the specified cairo context,
|
||||||
|
*
|
||||||
|
* embedding the text associated with the glyphs in the output if the
|
||||||
|
* output format supports it (PDF for example), otherwise it acts
|
||||||
|
* similar to [func`show_glyph_string]`.
|
||||||
|
*
|
||||||
|
* The origin of the glyphs (the left edge of the baseline) will
|
||||||
|
* be drawn at the current point of the cairo context.
|
||||||
|
*
|
||||||
|
* Note that `text` is the start of the text for layout, which is then
|
||||||
|
* indexed by `glyph_item->item->offset`.
|
||||||
|
* @param cr a Cairo context
|
||||||
|
* @param text the UTF-8 text that @glyph_item refers to
|
||||||
|
* @param glyph_item a `PangoGlyphItem`
|
||||||
|
*/
|
||||||
|
function show_glyph_item(cr: cairo.Context, text: string, glyph_item: Pango.GlyphItem): void;
|
||||||
|
/**
|
||||||
|
* Draws the glyphs in `glyphs` in the specified cairo context.
|
||||||
|
*
|
||||||
|
* The origin of the glyphs (the left edge of the baseline) will
|
||||||
|
* be drawn at the current point of the cairo context.
|
||||||
|
* @param cr a Cairo context
|
||||||
|
* @param font a `PangoFont` from a `PangoCairoFontMap`
|
||||||
|
* @param glyphs a `PangoGlyphString`
|
||||||
|
*/
|
||||||
|
function show_glyph_string(cr: cairo.Context, font: Pango.Font, glyphs: Pango.GlyphString): void;
|
||||||
|
/**
|
||||||
|
* Draws a `PangoLayout` in the specified cairo context.
|
||||||
|
*
|
||||||
|
* The top-left corner of the `PangoLayout` will be drawn
|
||||||
|
* at the current point of the cairo context.
|
||||||
|
* @param cr a Cairo context
|
||||||
|
* @param layout a Pango layout
|
||||||
|
*/
|
||||||
|
function show_layout(cr: cairo.Context, layout: Pango.Layout): void;
|
||||||
|
/**
|
||||||
|
* Draws a `PangoLayoutLine` in the specified cairo context.
|
||||||
|
*
|
||||||
|
* The origin of the glyphs (the left edge of the line) will
|
||||||
|
* be drawn at the current point of the cairo context.
|
||||||
|
* @param cr a Cairo context
|
||||||
|
* @param line a `PangoLayoutLine`
|
||||||
|
*/
|
||||||
|
function show_layout_line(cr: cairo.Context, line: Pango.LayoutLine): void;
|
||||||
|
/**
|
||||||
|
* Updates a `PangoContext` previously created for use with Cairo to
|
||||||
|
* match the current transformation and target surface of a Cairo
|
||||||
|
* context.
|
||||||
|
*
|
||||||
|
* If any layouts have been created for the context, it's necessary
|
||||||
|
* to call [method`Pango`.Layout.context_changed] on those layouts.
|
||||||
|
* @param cr a Cairo context
|
||||||
|
* @param context a `PangoContext`, from a pangocairo font map
|
||||||
|
*/
|
||||||
|
function update_context(cr: cairo.Context, context: Pango.Context): void;
|
||||||
|
/**
|
||||||
|
* Updates the private `PangoContext` of a `PangoLayout` created with
|
||||||
|
* [func`create_layout]` to match the current transformation and target
|
||||||
|
* surface of a Cairo context.
|
||||||
|
* @param cr a Cairo context
|
||||||
|
* @param layout a `PangoLayout`, from [func@create_layout]
|
||||||
|
*/
|
||||||
|
function update_layout(cr: cairo.Context, layout: Pango.Layout): void;
|
||||||
|
interface ShapeRendererFunc {
|
||||||
|
(cr: cairo.Context, attr: Pango.AttrShape, do_path: boolean): void;
|
||||||
|
}
|
||||||
|
namespace Font {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Pango.Font.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface FontNamespace {
|
||||||
|
$gtype: GObject.GType<Font>;
|
||||||
|
prototype: Font;
|
||||||
|
}
|
||||||
|
interface Font extends Pango.Font {
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the `cairo_scaled_font_t` used by `font`.
|
||||||
|
* The scaled font can be referenced and kept using
|
||||||
|
* cairo_scaled_font_reference().
|
||||||
|
* @returns the `cairo_scaled_font_t` used by @font
|
||||||
|
*/
|
||||||
|
get_scaled_font(): cairo.ScaledFont | null;
|
||||||
|
}
|
||||||
|
|
||||||
|
export const Font: FontNamespace & {
|
||||||
|
new (): Font; // This allows `obj instanceof Font`
|
||||||
|
};
|
||||||
|
|
||||||
|
namespace FontMap {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Pango.FontMap.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface FontMapNamespace {
|
||||||
|
$gtype: GObject.GType<FontMap>;
|
||||||
|
prototype: FontMap;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets a default `PangoCairoFontMap` to use with Cairo.
|
||||||
|
*
|
||||||
|
* Note that the type of the returned object will depend on the
|
||||||
|
* particular font backend Cairo was compiled to use; you generally
|
||||||
|
* should only use the `PangoFontMap` and `PangoCairoFontMap`
|
||||||
|
* interfaces on the returned object.
|
||||||
|
*
|
||||||
|
* The default Cairo fontmap can be changed by using
|
||||||
|
* [method`PangoCairo`.FontMap.set_default]. This can be used to
|
||||||
|
* change the Cairo font backend that the default fontmap uses
|
||||||
|
* for example.
|
||||||
|
*
|
||||||
|
* Note that since Pango 1.32.6, the default fontmap is per-thread.
|
||||||
|
* Each thread gets its own default fontmap. In this way, PangoCairo
|
||||||
|
* can be used safely from multiple threads.
|
||||||
|
*/
|
||||||
|
get_default(): Pango.FontMap;
|
||||||
|
/**
|
||||||
|
* Creates a new `PangoCairoFontMap` object.
|
||||||
|
*
|
||||||
|
* A fontmap is used to cache information about available fonts,
|
||||||
|
* and holds certain global parameters such as the resolution.
|
||||||
|
* In most cases, you can use `func`PangoCairo`.font_map_get_default]
|
||||||
|
* instead.
|
||||||
|
*
|
||||||
|
* Note that the type of the returned object will depend
|
||||||
|
* on the particular font backend Cairo was compiled to use;
|
||||||
|
* You generally should only use the `PangoFontMap` and
|
||||||
|
* `PangoCairoFontMap` interfaces on the returned object.
|
||||||
|
*
|
||||||
|
* You can override the type of backend returned by using an
|
||||||
|
* environment variable %PANGOCAIRO_BACKEND. Supported types,
|
||||||
|
* based on your build, are fc (fontconfig), win32, and coretext.
|
||||||
|
* If requested type is not available, NULL is returned. Ie.
|
||||||
|
* this is only useful for testing, when at least two backends
|
||||||
|
* are compiled in.
|
||||||
|
*/
|
||||||
|
['new'](): Pango.FontMap;
|
||||||
|
/**
|
||||||
|
* Creates a new `PangoCairoFontMap` object of the type suitable
|
||||||
|
* to be used with cairo font backend of type `fonttype`.
|
||||||
|
*
|
||||||
|
* In most cases one should simply use [func`PangoCairo`.FontMap.new], or
|
||||||
|
* in fact in most of those cases, just use [func`PangoCairo`.FontMap.get_default].
|
||||||
|
* @param fonttype desired #cairo_font_type_t
|
||||||
|
*/
|
||||||
|
new_for_font_type(fonttype: cairo.FontType): Pango.FontMap | null;
|
||||||
|
}
|
||||||
|
interface FontMap extends Pango.FontMap {
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the type of Cairo font backend that `fontmap` uses.
|
||||||
|
* @returns the `cairo_font_type_t` cairo font backend type
|
||||||
|
*/
|
||||||
|
get_font_type(): cairo.FontType;
|
||||||
|
/**
|
||||||
|
* Gets the resolution for the fontmap.
|
||||||
|
*
|
||||||
|
* See [method`PangoCairo`.FontMap.set_resolution].
|
||||||
|
* @returns the resolution in "dots per inch"
|
||||||
|
*/
|
||||||
|
get_resolution(): number;
|
||||||
|
/**
|
||||||
|
* Sets a default `PangoCairoFontMap` to use with Cairo.
|
||||||
|
*
|
||||||
|
* This can be used to change the Cairo font backend that the
|
||||||
|
* default fontmap uses for example. The old default font map
|
||||||
|
* is unreffed and the new font map referenced.
|
||||||
|
*
|
||||||
|
* Note that since Pango 1.32.6, the default fontmap is per-thread.
|
||||||
|
* This function only changes the default fontmap for
|
||||||
|
* the current thread. Default fontmaps of existing threads
|
||||||
|
* are not changed. Default fontmaps of any new threads will
|
||||||
|
* still be created using [func`PangoCairo`.FontMap.new].
|
||||||
|
*
|
||||||
|
* A value of %NULL for `fontmap` will cause the current default
|
||||||
|
* font map to be released and a new default font map to be created
|
||||||
|
* on demand, using [func`PangoCairo`.FontMap.new].
|
||||||
|
*/
|
||||||
|
set_default(): void;
|
||||||
|
/**
|
||||||
|
* Sets the resolution for the fontmap.
|
||||||
|
*
|
||||||
|
* This is a scale factor between
|
||||||
|
* points specified in a `PangoFontDescription` and Cairo units. The
|
||||||
|
* default value is 96, meaning that a 10 point font will be 13
|
||||||
|
* units high. (10 * 96. / 72. = 13.3).
|
||||||
|
* @param dpi the resolution in "dots per inch". (Physical inches aren't actually involved; the terminology is conventional.)
|
||||||
|
*/
|
||||||
|
set_resolution(dpi: number): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
export const FontMap: FontMapNamespace & {
|
||||||
|
new (): FontMap; // This allows `obj instanceof FontMap`
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 PangoCairo;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://PangoCairo' {
|
||||||
|
import PangoCairo10 from 'gi://PangoCairo?version=1.0';
|
||||||
|
export default PangoCairo10;
|
||||||
|
}
|
||||||
|
// END
|
962
@girs/pangofc-1.0.d.ts
vendored
Normal file
962
@girs/pangofc-1.0.d.ts
vendored
Normal file
|
@ -0,0 +1,962 @@
|
||||||
|
/// <reference path="./fontconfig-2.0.d.ts" />
|
||||||
|
/// <reference path="./pango-1.0.d.ts" />
|
||||||
|
/// <reference path="./cairo-1.0.d.ts" />
|
||||||
|
/// <reference path="./cairo.d.ts" />
|
||||||
|
/// <reference path="./gobject-2.0.d.ts" />
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./harfbuzz-0.0.d.ts" />
|
||||||
|
/// <reference path="./freetype2-2.0.d.ts" />
|
||||||
|
/// <reference path="./gio-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://PangoFc?version=1.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type fontconfig from 'gi://fontconfig?version=2.0';
|
||||||
|
import type Pango from 'gi://Pango?version=1.0';
|
||||||
|
import type cairo from 'cairo';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type HarfBuzz from 'gi://HarfBuzz?version=0.0';
|
||||||
|
import type freetype2 from 'gi://freetype2?version=2.0';
|
||||||
|
import type Gio from 'gi://Gio?version=2.0';
|
||||||
|
import type GModule from 'gi://GModule?version=2.0';
|
||||||
|
|
||||||
|
export namespace PangoFc {
|
||||||
|
/**
|
||||||
|
* PangoFc-1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fontconfig property that Pango reads from font
|
||||||
|
* patterns to populate list of OpenType features
|
||||||
|
* to be enabled for the font by default.
|
||||||
|
*
|
||||||
|
* The property will have a number of string elements,
|
||||||
|
* each of which is the OpenType feature tag of one feature
|
||||||
|
* to enable.
|
||||||
|
*
|
||||||
|
* This is equivalent to FC_FONT_FEATURES in versions of
|
||||||
|
* fontconfig that have that.
|
||||||
|
*/
|
||||||
|
const FONT_FEATURES: string;
|
||||||
|
/**
|
||||||
|
* Fontconfig property that Pango reads from font
|
||||||
|
* patterns to populate list of OpenType font variations
|
||||||
|
* to be used for a font.
|
||||||
|
*
|
||||||
|
* The property will have a string elements, each of which
|
||||||
|
* a comma-separated list of OpenType axis setting of the
|
||||||
|
* form AXIS=VALUE.
|
||||||
|
*
|
||||||
|
* This is equivalent to FC_FONT_VARIATIONS in versions of
|
||||||
|
* fontconfig that have that.
|
||||||
|
*/
|
||||||
|
const FONT_VARIATIONS: string;
|
||||||
|
/**
|
||||||
|
* Fontconfig property that Pango sets on any
|
||||||
|
* fontconfig pattern it passes to fontconfig
|
||||||
|
* if a `PangoGravity` other than %PANGO_GRAVITY_SOUTH
|
||||||
|
* is desired.
|
||||||
|
*
|
||||||
|
* The property will have a `PangoGravity` value as a string,
|
||||||
|
* like "east". This can be used to write fontconfig configuration
|
||||||
|
* rules to choose different fonts for horizontal and vertical
|
||||||
|
* writing directions.
|
||||||
|
*/
|
||||||
|
const GRAVITY: string;
|
||||||
|
/**
|
||||||
|
* Fontconfig property that Pango sets on any
|
||||||
|
* fontconfig pattern it passes to fontconfig.
|
||||||
|
*
|
||||||
|
* The property will have a string equal to what
|
||||||
|
* g_get_prgname() returns. This can be used to write
|
||||||
|
* fontconfig configuration rules that only affect
|
||||||
|
* certain applications.
|
||||||
|
*
|
||||||
|
* This is equivalent to FC_PRGNAME in versions of
|
||||||
|
* fontconfig that have that.
|
||||||
|
*/
|
||||||
|
const PRGNAME: string;
|
||||||
|
/**
|
||||||
|
* Fontconfig property that Pango sets on any
|
||||||
|
* fontconfig pattern it passes to fontconfig.
|
||||||
|
*
|
||||||
|
* The property will have an integer value equal to what
|
||||||
|
* [func`Pango`.version] returns. This can be used to write
|
||||||
|
* fontconfig configuration rules that only affect certain
|
||||||
|
* pango versions (or only pango-using applications, or only
|
||||||
|
* non-pango-using applications).
|
||||||
|
*/
|
||||||
|
const VERSION: string;
|
||||||
|
interface SubstituteFunc {
|
||||||
|
(pattern: fontconfig.Pattern, data?: any | null): void;
|
||||||
|
}
|
||||||
|
namespace Decoder {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* `PangoFcDecoder` is a virtual base class that implementations will
|
||||||
|
* inherit from.
|
||||||
|
*
|
||||||
|
* It's the interface that is used to define a custom encoding for a font.
|
||||||
|
* These objects are created in your code from a function callback that was
|
||||||
|
* originally registered with [method`PangoFc`.FontMap.add_decoder_find_func].
|
||||||
|
* Pango requires information about the supported charset for a font as well
|
||||||
|
* as the individual character to glyph conversions. Pango gets that
|
||||||
|
* information via the #get_charset and #get_glyph callbacks into your
|
||||||
|
* object implementation.
|
||||||
|
*/
|
||||||
|
abstract class Decoder extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Decoder>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Decoder.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Virtual methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Generates an `FcCharSet` of supported characters for the `fcfont`
|
||||||
|
* given.
|
||||||
|
*
|
||||||
|
* The returned `FcCharSet` will be a reference to an
|
||||||
|
* internal value stored by the `PangoFcDecoder` and must not
|
||||||
|
* be modified or freed.
|
||||||
|
* @param fcfont the `PangoFcFont` to query.
|
||||||
|
*/
|
||||||
|
vfunc_get_charset(fcfont: Font): fontconfig.CharSet;
|
||||||
|
/**
|
||||||
|
* Generates a `PangoGlyph` for the given Unicode point using the
|
||||||
|
* custom decoder.
|
||||||
|
*
|
||||||
|
* For complex scripts where there can be multiple
|
||||||
|
* glyphs for a single character, the decoder will return whatever
|
||||||
|
* glyph is most convenient for it. (Usually whatever glyph is directly
|
||||||
|
* in the fonts character map table.)
|
||||||
|
* @param fcfont a `PangoFcFont` to query.
|
||||||
|
* @param wc the Unicode code point to convert to a single `PangoGlyph`.
|
||||||
|
*/
|
||||||
|
vfunc_get_glyph(fcfont: Font, wc: number): Pango.Glyph;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Generates an `FcCharSet` of supported characters for the `fcfont`
|
||||||
|
* given.
|
||||||
|
*
|
||||||
|
* The returned `FcCharSet` will be a reference to an
|
||||||
|
* internal value stored by the `PangoFcDecoder` and must not
|
||||||
|
* be modified or freed.
|
||||||
|
* @param fcfont the `PangoFcFont` to query.
|
||||||
|
* @returns the `FcCharset` for @fcfont; must not be modified or freed.
|
||||||
|
*/
|
||||||
|
get_charset(fcfont: Font): fontconfig.CharSet;
|
||||||
|
/**
|
||||||
|
* Generates a `PangoGlyph` for the given Unicode point using the
|
||||||
|
* custom decoder.
|
||||||
|
*
|
||||||
|
* For complex scripts where there can be multiple
|
||||||
|
* glyphs for a single character, the decoder will return whatever
|
||||||
|
* glyph is most convenient for it. (Usually whatever glyph is directly
|
||||||
|
* in the fonts character map table.)
|
||||||
|
* @param fcfont a `PangoFcFont` to query.
|
||||||
|
* @param wc the Unicode code point to convert to a single `PangoGlyph`.
|
||||||
|
* @returns the glyph index, or 0 if the glyph isn't covered by the font.
|
||||||
|
*/
|
||||||
|
get_glyph(fcfont: Font, wc: number): Pango.Glyph;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Font {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Pango.Font.ConstructorProps {
|
||||||
|
fontmap: FontMap;
|
||||||
|
pattern: any;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* `PangoFcFont` is a base class for font implementations
|
||||||
|
* using the Fontconfig and FreeType libraries.
|
||||||
|
*
|
||||||
|
* It is used in onjunction with [class`PangoFc`.FontMap].
|
||||||
|
* When deriving from this class, you need to implement all
|
||||||
|
* of its virtual functions other than shutdown() along with
|
||||||
|
* the get_glyph_extents() virtual function from `PangoFont`.
|
||||||
|
*/
|
||||||
|
abstract class Font extends Pango.Font {
|
||||||
|
static $gtype: GObject.GType<Font>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The PangoFc font map this font is associated with.
|
||||||
|
*/
|
||||||
|
get fontmap(): FontMap;
|
||||||
|
set fontmap(val: FontMap);
|
||||||
|
/**
|
||||||
|
* The fontconfig pattern for this font.
|
||||||
|
*/
|
||||||
|
get pattern(): any;
|
||||||
|
|
||||||
|
// Fields
|
||||||
|
|
||||||
|
priv: any;
|
||||||
|
matrix: Pango.Matrix;
|
||||||
|
metrics_by_lang: any[];
|
||||||
|
is_hinted: number;
|
||||||
|
is_transformed: number;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Font.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a `PangoFontDescription` that matches the specified
|
||||||
|
* Fontconfig pattern as closely as possible.
|
||||||
|
*
|
||||||
|
* Many possible Fontconfig pattern values, such as %FC_RASTERIZER
|
||||||
|
* or %FC_DPI, don't make sense in the context of `PangoFontDescription`,
|
||||||
|
* so will be ignored.
|
||||||
|
* @param pattern a `FcPattern`
|
||||||
|
* @param include_size if %TRUE, the pattern will include the size from the @pattern; otherwise the resulting pattern will be unsized. (only %FC_SIZE is examined, not %FC_PIXEL_SIZE)
|
||||||
|
*/
|
||||||
|
static description_from_pattern(pattern: fontconfig.Pattern, include_size: boolean): Pango.FontDescription;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the glyph index for a given Unicode character
|
||||||
|
* for `font`.
|
||||||
|
*
|
||||||
|
* If you only want to determine whether the font has
|
||||||
|
* the glyph, use [method`PangoFc`.Font.has_char].
|
||||||
|
* @param wc Unicode character to look up
|
||||||
|
* @returns the glyph index, or 0, if the Unicode character doesn't exist in the font.
|
||||||
|
*/
|
||||||
|
get_glyph(wc: number): number;
|
||||||
|
/**
|
||||||
|
* Returns the languages that are supported by `font`.
|
||||||
|
*
|
||||||
|
* This corresponds to the FC_LANG member of the FcPattern.
|
||||||
|
*
|
||||||
|
* The returned array is only valid as long as the font
|
||||||
|
* and its fontmap are valid.
|
||||||
|
* @returns a %NULL-terminated array of `PangoLanguage`*
|
||||||
|
*/
|
||||||
|
get_languages(): Pango.Language[] | null;
|
||||||
|
/**
|
||||||
|
* Returns the index of a glyph suitable for drawing `wc`
|
||||||
|
* as an unknown character.
|
||||||
|
*
|
||||||
|
* Use PANGO_GET_UNKNOWN_GLYPH() instead.
|
||||||
|
* @param wc the Unicode character for which a glyph is needed.
|
||||||
|
* @returns a glyph index into @font.
|
||||||
|
*/
|
||||||
|
get_unknown_glyph(wc: number): Pango.Glyph;
|
||||||
|
/**
|
||||||
|
* Determines whether `font` has a glyph for the codepoint `wc`.
|
||||||
|
* @param wc Unicode codepoint to look up
|
||||||
|
* @returns %TRUE if @font has the requested codepoint.
|
||||||
|
*/
|
||||||
|
has_char(wc: number): boolean;
|
||||||
|
/**
|
||||||
|
* This function used to adjust each adjacent pair of glyphs
|
||||||
|
* in `glyphs` according to kerning information in `font`.
|
||||||
|
*
|
||||||
|
* Since 1.44, it does nothing.
|
||||||
|
* @param glyphs a `PangoGlyphString`
|
||||||
|
*/
|
||||||
|
kern_glyphs(glyphs: Pango.GlyphString): void;
|
||||||
|
/**
|
||||||
|
* Releases a font previously obtained with
|
||||||
|
* [method`PangoFc`.Font.lock_face].
|
||||||
|
*/
|
||||||
|
unlock_face(): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace FontMap {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps<A extends GObject.Object = GObject.Object>
|
||||||
|
extends Pango.FontMap.ConstructorProps,
|
||||||
|
Gio.ListModel.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* `PangoFcFontMap` is a base class for font map implementations using the
|
||||||
|
* Fontconfig and FreeType libraries.
|
||||||
|
*
|
||||||
|
* It is used in the Xft and FreeType backends shipped with Pango,
|
||||||
|
* but can also be used when creating new backends. Any backend
|
||||||
|
* deriving from this base class will take advantage of the wide
|
||||||
|
* range of shapers implemented using FreeType that come with Pango.
|
||||||
|
*/
|
||||||
|
abstract class FontMap<A extends GObject.Object = GObject.Object>
|
||||||
|
extends Pango.FontMap
|
||||||
|
implements Gio.ListModel<A>
|
||||||
|
{
|
||||||
|
static $gtype: GObject.GType<FontMap>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<FontMap.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Clear all cached information and fontsets for this font map.
|
||||||
|
*
|
||||||
|
* This should be called whenever there is a change in the
|
||||||
|
* output of the default_substitute() virtual function of the
|
||||||
|
* font map, or if fontconfig has been reinitialized to new
|
||||||
|
* configuration.
|
||||||
|
*/
|
||||||
|
cache_clear(): void;
|
||||||
|
/**
|
||||||
|
* Informs font map that the fontconfig configuration (i.e.,
|
||||||
|
* the `FcConfig` object) used by this font map has changed.
|
||||||
|
*
|
||||||
|
* This currently calls [method`PangoFc`.FontMap.cache_clear] which
|
||||||
|
* ensures that list of fonts, etc will be regenerated using the
|
||||||
|
* updated configuration.
|
||||||
|
*/
|
||||||
|
config_changed(): void;
|
||||||
|
/**
|
||||||
|
* Creates a new context for this fontmap.
|
||||||
|
*
|
||||||
|
* This function is intended only for backend implementations deriving
|
||||||
|
* from `PangoFcFontMap`; it is possible that a backend will store
|
||||||
|
* additional information needed for correct operation on the `PangoContext`
|
||||||
|
* after calling this function.
|
||||||
|
* @returns a new `PangoContext`
|
||||||
|
*/
|
||||||
|
create_context(): Pango.Context;
|
||||||
|
/**
|
||||||
|
* Finds the decoder to use for `pattern`.
|
||||||
|
*
|
||||||
|
* Decoders can be added to a font map using
|
||||||
|
* [method`PangoFc`.FontMap.add_decoder_find_func].
|
||||||
|
* @param pattern The `FcPattern` to find the decoder for.
|
||||||
|
* @returns a newly created `PangoFcDecoder` object or %NULL if no decoder is set for @pattern.
|
||||||
|
*/
|
||||||
|
find_decoder(pattern: fontconfig.Pattern): Decoder | null;
|
||||||
|
/**
|
||||||
|
* Sets a function that will be called to do final configuration
|
||||||
|
* substitution on a `FcPattern` before it is used to load
|
||||||
|
* the font.
|
||||||
|
*
|
||||||
|
* This function can be used to do things like set
|
||||||
|
* hinting and antialiasing options.
|
||||||
|
* @param func function to call to to do final config tweaking on `FcPattern` objects
|
||||||
|
*/
|
||||||
|
set_default_substitute(func: SubstituteFunc): void;
|
||||||
|
/**
|
||||||
|
* Clears all cached information for the fontmap and marks
|
||||||
|
* all fonts open for the fontmap as dead.
|
||||||
|
*
|
||||||
|
* See the shutdown() virtual function of `PangoFcFont`.
|
||||||
|
*
|
||||||
|
* This function might be used by a backend when the underlying
|
||||||
|
* windowing system for the font map exits. This function is only
|
||||||
|
* intended to be called only for backend implementations deriving
|
||||||
|
* from `PangoFcFontMap`.
|
||||||
|
*/
|
||||||
|
shutdown(): void;
|
||||||
|
/**
|
||||||
|
* Call this function any time the results of the default
|
||||||
|
* substitution function set with
|
||||||
|
* [method`PangoFc`.FontMap.set_default_substitute] change.
|
||||||
|
*
|
||||||
|
* That is, if your substitution function will return different
|
||||||
|
* results for the same input pattern, you must call this function.
|
||||||
|
*/
|
||||||
|
substitute_changed(): void;
|
||||||
|
|
||||||
|
// Inherited methods
|
||||||
|
/**
|
||||||
|
* Gets the type of the items in `list`.
|
||||||
|
*
|
||||||
|
* All items returned from g_list_model_get_item() are of the type
|
||||||
|
* returned by this function, or a subtype, or if the type is an
|
||||||
|
* interface, they are an implementation of that interface.
|
||||||
|
*
|
||||||
|
* The item type of a #GListModel can not change during the life of the
|
||||||
|
* model.
|
||||||
|
* @returns the #GType of the items contained in @list.
|
||||||
|
*/
|
||||||
|
get_item_type(): GObject.GType;
|
||||||
|
/**
|
||||||
|
* Gets the number of items in `list`.
|
||||||
|
*
|
||||||
|
* Depending on the model implementation, calling this function may be
|
||||||
|
* less efficient than iterating the list with increasing values for
|
||||||
|
* `position` until g_list_model_get_item() returns %NULL.
|
||||||
|
* @returns the number of items in @list.
|
||||||
|
*/
|
||||||
|
get_n_items(): number;
|
||||||
|
/**
|
||||||
|
* Get the item at `position`.
|
||||||
|
*
|
||||||
|
* If `position` is greater than the number of items in `list,` %NULL is
|
||||||
|
* returned.
|
||||||
|
*
|
||||||
|
* %NULL is never returned for an index that is smaller than the length
|
||||||
|
* of the list.
|
||||||
|
*
|
||||||
|
* This function is meant to be used by language bindings in place
|
||||||
|
* of g_list_model_get_item().
|
||||||
|
*
|
||||||
|
* See also: g_list_model_get_n_items()
|
||||||
|
* @param position the position of the item to fetch
|
||||||
|
* @returns the object at @position.
|
||||||
|
*/
|
||||||
|
get_item(position: number): A | null;
|
||||||
|
/**
|
||||||
|
* Emits the #GListModel::items-changed signal on `list`.
|
||||||
|
*
|
||||||
|
* This function should only be called by classes implementing
|
||||||
|
* #GListModel. It has to be called after the internal representation
|
||||||
|
* of `list` has been updated, because handlers connected to this signal
|
||||||
|
* might query the new state of the list.
|
||||||
|
*
|
||||||
|
* Implementations must only make changes to the model (as visible to
|
||||||
|
* its consumer) in places that will not cause problems for that
|
||||||
|
* consumer. For models that are driven directly by a write API (such
|
||||||
|
* as #GListStore), changes can be reported in response to uses of that
|
||||||
|
* API. For models that represent remote data, changes should only be
|
||||||
|
* made from a fresh mainloop dispatch. It is particularly not
|
||||||
|
* permitted to make changes in response to a call to the #GListModel
|
||||||
|
* consumer API.
|
||||||
|
*
|
||||||
|
* Stated another way: in general, it is assumed that code making a
|
||||||
|
* series of accesses to the model via the API, without returning to the
|
||||||
|
* mainloop, and without calling other code, will continue to view the
|
||||||
|
* same contents of the model.
|
||||||
|
* @param position the position at which @list changed
|
||||||
|
* @param removed the number of items removed
|
||||||
|
* @param added the number of items added
|
||||||
|
*/
|
||||||
|
items_changed(position: number, removed: number, added: number): void;
|
||||||
|
/**
|
||||||
|
* Get the item at `position`. If `position` is greater than the number of
|
||||||
|
* items in `list,` %NULL is returned.
|
||||||
|
*
|
||||||
|
* %NULL is never returned for an index that is smaller than the length
|
||||||
|
* of the list. See g_list_model_get_n_items().
|
||||||
|
*
|
||||||
|
* The same #GObject instance may not appear more than once in a #GListModel.
|
||||||
|
* @param position the position of the item to fetch
|
||||||
|
*/
|
||||||
|
vfunc_get_item(position: number): A | null;
|
||||||
|
/**
|
||||||
|
* Gets the type of the items in `list`.
|
||||||
|
*
|
||||||
|
* All items returned from g_list_model_get_item() are of the type
|
||||||
|
* returned by this function, or a subtype, or if the type is an
|
||||||
|
* interface, they are an implementation of that interface.
|
||||||
|
*
|
||||||
|
* The item type of a #GListModel can not change during the life of the
|
||||||
|
* model.
|
||||||
|
*/
|
||||||
|
vfunc_get_item_type(): GObject.GType;
|
||||||
|
/**
|
||||||
|
* Gets the number of items in `list`.
|
||||||
|
*
|
||||||
|
* Depending on the model implementation, calling this function may be
|
||||||
|
* less efficient than iterating the list with increasing values for
|
||||||
|
* `position` until g_list_model_get_item() returns %NULL.
|
||||||
|
*/
|
||||||
|
vfunc_get_n_items(): number;
|
||||||
|
/**
|
||||||
|
* Creates a binding between `source_property` on `source` and `target_property`
|
||||||
|
* on `target`.
|
||||||
|
*
|
||||||
|
* Whenever the `source_property` is changed the `target_property` is
|
||||||
|
* updated using the same value. For instance:
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* ```c
|
||||||
|
* g_object_bind_property (action, "active", widget, "sensitive", 0);
|
||||||
|
* ```
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* Will result in the "sensitive" property of the widget #GObject instance to be
|
||||||
|
* updated with the same value of the "active" property of the action #GObject
|
||||||
|
* instance.
|
||||||
|
*
|
||||||
|
* If `flags` contains %G_BINDING_BIDIRECTIONAL then the binding will be mutual:
|
||||||
|
* if `target_property` on `target` changes then the `source_property` on `source`
|
||||||
|
* will be updated as well.
|
||||||
|
*
|
||||||
|
* The binding will automatically be removed when either the `source` or the
|
||||||
|
* `target` instances are finalized. To remove the binding without affecting the
|
||||||
|
* `source` and the `target` you can just call g_object_unref() on the returned
|
||||||
|
* #GBinding instance.
|
||||||
|
*
|
||||||
|
* Removing the binding by calling g_object_unref() on it must only be done if
|
||||||
|
* the binding, `source` and `target` are only used from a single thread and it
|
||||||
|
* is clear that both `source` and `target` outlive the binding. Especially it
|
||||||
|
* is not safe to rely on this if the binding, `source` or `target` can be
|
||||||
|
* finalized from different threads. Keep another reference to the binding and
|
||||||
|
* use g_binding_unbind() instead to be on the safe side.
|
||||||
|
*
|
||||||
|
* A #GObject can have multiple bindings.
|
||||||
|
* @param source_property the property on @source to bind
|
||||||
|
* @param target the target #GObject
|
||||||
|
* @param target_property the property on @target to bind
|
||||||
|
* @param flags flags to pass to #GBinding
|
||||||
|
* @returns the #GBinding instance representing the binding between the two #GObject instances. The binding is released whenever the #GBinding reference count reaches zero.
|
||||||
|
*/
|
||||||
|
bind_property(
|
||||||
|
source_property: string,
|
||||||
|
target: GObject.Object,
|
||||||
|
target_property: string,
|
||||||
|
flags: GObject.BindingFlags | null,
|
||||||
|
): GObject.Binding;
|
||||||
|
/**
|
||||||
|
* Complete version of g_object_bind_property().
|
||||||
|
*
|
||||||
|
* Creates a binding between `source_property` on `source` and `target_property`
|
||||||
|
* on `target,` allowing you to set the transformation functions to be used by
|
||||||
|
* the binding.
|
||||||
|
*
|
||||||
|
* If `flags` contains %G_BINDING_BIDIRECTIONAL then the binding will be mutual:
|
||||||
|
* if `target_property` on `target` changes then the `source_property` on `source`
|
||||||
|
* will be updated as well. The `transform_from` function is only used in case
|
||||||
|
* of bidirectional bindings, otherwise it will be ignored
|
||||||
|
*
|
||||||
|
* The binding will automatically be removed when either the `source` or the
|
||||||
|
* `target` instances are finalized. This will release the reference that is
|
||||||
|
* being held on the #GBinding instance; if you want to hold on to the
|
||||||
|
* #GBinding instance, you will need to hold a reference to it.
|
||||||
|
*
|
||||||
|
* To remove the binding, call g_binding_unbind().
|
||||||
|
*
|
||||||
|
* A #GObject can have multiple bindings.
|
||||||
|
*
|
||||||
|
* The same `user_data` parameter will be used for both `transform_to`
|
||||||
|
* and `transform_from` transformation functions; the `notify` function will
|
||||||
|
* be called once, when the binding is removed. If you need different data
|
||||||
|
* for each transformation function, please use
|
||||||
|
* g_object_bind_property_with_closures() instead.
|
||||||
|
* @param source_property the property on @source to bind
|
||||||
|
* @param target the target #GObject
|
||||||
|
* @param target_property the property on @target to bind
|
||||||
|
* @param flags flags to pass to #GBinding
|
||||||
|
* @param transform_to the transformation function from the @source to the @target, or %NULL to use the default
|
||||||
|
* @param transform_from the transformation function from the @target to the @source, or %NULL to use the default
|
||||||
|
* @param notify a function to call when disposing the binding, to free resources used by the transformation functions, or %NULL if not required
|
||||||
|
* @returns the #GBinding instance representing the binding between the two #GObject instances. The binding is released whenever the #GBinding reference count reaches zero.
|
||||||
|
*/
|
||||||
|
bind_property_full(
|
||||||
|
source_property: string,
|
||||||
|
target: GObject.Object,
|
||||||
|
target_property: string,
|
||||||
|
flags: GObject.BindingFlags | null,
|
||||||
|
transform_to?: GObject.BindingTransformFunc | null,
|
||||||
|
transform_from?: GObject.BindingTransformFunc | null,
|
||||||
|
notify?: GLib.DestroyNotify | null,
|
||||||
|
): GObject.Binding;
|
||||||
|
// Conflicted with GObject.Object.bind_property_full
|
||||||
|
bind_property_full(...args: never[]): any;
|
||||||
|
/**
|
||||||
|
* This function is intended for #GObject implementations to re-enforce
|
||||||
|
* a [floating][floating-ref] object reference. Doing this is seldom
|
||||||
|
* required: all #GInitiallyUnowneds are created with a floating reference
|
||||||
|
* which usually just needs to be sunken by calling g_object_ref_sink().
|
||||||
|
*/
|
||||||
|
force_floating(): void;
|
||||||
|
/**
|
||||||
|
* Increases the freeze count on `object`. If the freeze count is
|
||||||
|
* non-zero, the emission of "notify" signals on `object` is
|
||||||
|
* stopped. The signals are queued until the freeze count is decreased
|
||||||
|
* to zero. Duplicate notifications are squashed so that at most one
|
||||||
|
* #GObject::notify signal is emitted for each property modified while the
|
||||||
|
* object is frozen.
|
||||||
|
*
|
||||||
|
* This is necessary for accessors that modify multiple properties to prevent
|
||||||
|
* premature notification while the object is still being modified.
|
||||||
|
*/
|
||||||
|
freeze_notify(): void;
|
||||||
|
/**
|
||||||
|
* Gets a named field from the objects table of associations (see g_object_set_data()).
|
||||||
|
* @param key name of the key for that association
|
||||||
|
* @returns the data if found, or %NULL if no such data exists.
|
||||||
|
*/
|
||||||
|
get_data(key: string): any | null;
|
||||||
|
/**
|
||||||
|
* Gets a property of an object.
|
||||||
|
*
|
||||||
|
* The value can be:
|
||||||
|
* - an empty GObject.Value initialized by G_VALUE_INIT, which will be automatically initialized with the expected type of the property (since GLib 2.60)
|
||||||
|
* - a GObject.Value initialized with the expected type of the property
|
||||||
|
* - a GObject.Value initialized with a type to which the expected type of the property can be transformed
|
||||||
|
*
|
||||||
|
* In general, a copy is made of the property contents and the caller is responsible for freeing the memory by calling GObject.Value.unset.
|
||||||
|
*
|
||||||
|
* Note that GObject.Object.get_property is really intended for language bindings, GObject.Object.get is much more convenient for C programming.
|
||||||
|
* @param property_name The name of the property to get
|
||||||
|
* @param value Return location for the property value. Can be an empty GObject.Value initialized by G_VALUE_INIT (auto-initialized with expected type since GLib 2.60), a GObject.Value initialized with the expected property type, or a GObject.Value initialized with a transformable type
|
||||||
|
*/
|
||||||
|
get_property(property_name: string, value: GObject.Value | any): any;
|
||||||
|
/**
|
||||||
|
* This function gets back user data pointers stored via
|
||||||
|
* g_object_set_qdata().
|
||||||
|
* @param quark A #GQuark, naming the user data pointer
|
||||||
|
* @returns The user data pointer set, or %NULL
|
||||||
|
*/
|
||||||
|
get_qdata(quark: GLib.Quark): any | null;
|
||||||
|
/**
|
||||||
|
* Gets `n_properties` properties for an `object`.
|
||||||
|
* Obtained properties will be set to `values`. All properties must be valid.
|
||||||
|
* Warnings will be emitted and undefined behaviour may result if invalid
|
||||||
|
* properties are passed in.
|
||||||
|
* @param names the names of each property to get
|
||||||
|
* @param values the values of each property to get
|
||||||
|
*/
|
||||||
|
getv(names: string[], values: (GObject.Value | any)[]): void;
|
||||||
|
/**
|
||||||
|
* Checks whether `object` has a [floating][floating-ref] reference.
|
||||||
|
* @returns %TRUE if @object has a floating reference
|
||||||
|
*/
|
||||||
|
is_floating(): boolean;
|
||||||
|
/**
|
||||||
|
* Emits a "notify" signal for the property `property_name` on `object`.
|
||||||
|
*
|
||||||
|
* When possible, eg. when signaling a property change from within the class
|
||||||
|
* that registered the property, you should use g_object_notify_by_pspec()
|
||||||
|
* instead.
|
||||||
|
*
|
||||||
|
* Note that emission of the notify signal may be blocked with
|
||||||
|
* g_object_freeze_notify(). In this case, the signal emissions are queued
|
||||||
|
* and will be emitted (in reverse order) when g_object_thaw_notify() is
|
||||||
|
* called.
|
||||||
|
* @param property_name the name of a property installed on the class of @object.
|
||||||
|
*/
|
||||||
|
notify(property_name: string): void;
|
||||||
|
/**
|
||||||
|
* Emits a "notify" signal for the property specified by `pspec` on `object`.
|
||||||
|
*
|
||||||
|
* This function omits the property name lookup, hence it is faster than
|
||||||
|
* g_object_notify().
|
||||||
|
*
|
||||||
|
* One way to avoid using g_object_notify() from within the
|
||||||
|
* class that registered the properties, and using g_object_notify_by_pspec()
|
||||||
|
* instead, is to store the GParamSpec used with
|
||||||
|
* g_object_class_install_property() inside a static array, e.g.:
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* ```c
|
||||||
|
* typedef enum
|
||||||
|
* {
|
||||||
|
* PROP_FOO = 1,
|
||||||
|
* PROP_LAST
|
||||||
|
* } MyObjectProperty;
|
||||||
|
*
|
||||||
|
* static GParamSpec *properties[PROP_LAST];
|
||||||
|
*
|
||||||
|
* static void
|
||||||
|
* my_object_class_init (MyObjectClass *klass)
|
||||||
|
* {
|
||||||
|
* properties[PROP_FOO] = g_param_spec_int ("foo", NULL, NULL,
|
||||||
|
* 0, 100,
|
||||||
|
* 50,
|
||||||
|
* G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
|
||||||
|
* g_object_class_install_property (gobject_class,
|
||||||
|
* PROP_FOO,
|
||||||
|
* properties[PROP_FOO]);
|
||||||
|
* }
|
||||||
|
* ```
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* and then notify a change on the "foo" property with:
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* ```c
|
||||||
|
* g_object_notify_by_pspec (self, properties[PROP_FOO]);
|
||||||
|
* ```
|
||||||
|
*
|
||||||
|
* @param pspec the #GParamSpec of a property installed on the class of @object.
|
||||||
|
*/
|
||||||
|
notify_by_pspec(pspec: GObject.ParamSpec): void;
|
||||||
|
/**
|
||||||
|
* Increases the reference count of `object`.
|
||||||
|
*
|
||||||
|
* Since GLib 2.56, if `GLIB_VERSION_MAX_ALLOWED` is 2.56 or greater, the type
|
||||||
|
* of `object` will be propagated to the return type (using the GCC typeof()
|
||||||
|
* extension), so any casting the caller needs to do on the return type must be
|
||||||
|
* explicit.
|
||||||
|
* @returns the same @object
|
||||||
|
*/
|
||||||
|
ref(): GObject.Object;
|
||||||
|
/**
|
||||||
|
* Increase the reference count of `object,` and possibly remove the
|
||||||
|
* [floating][floating-ref] reference, if `object` has a floating reference.
|
||||||
|
*
|
||||||
|
* In other words, if the object is floating, then this call "assumes
|
||||||
|
* ownership" of the floating reference, converting it to a normal
|
||||||
|
* reference by clearing the floating flag while leaving the reference
|
||||||
|
* count unchanged. If the object is not floating, then this call
|
||||||
|
* adds a new normal reference increasing the reference count by one.
|
||||||
|
*
|
||||||
|
* Since GLib 2.56, the type of `object` will be propagated to the return type
|
||||||
|
* under the same conditions as for g_object_ref().
|
||||||
|
* @returns @object
|
||||||
|
*/
|
||||||
|
ref_sink(): GObject.Object;
|
||||||
|
/**
|
||||||
|
* Releases all references to other objects. This can be used to break
|
||||||
|
* reference cycles.
|
||||||
|
*
|
||||||
|
* This function should only be called from object system implementations.
|
||||||
|
*/
|
||||||
|
run_dispose(): void;
|
||||||
|
/**
|
||||||
|
* Each object carries around a table of associations from
|
||||||
|
* strings to pointers. This function lets you set an association.
|
||||||
|
*
|
||||||
|
* If the object already had an association with that name,
|
||||||
|
* the old association will be destroyed.
|
||||||
|
*
|
||||||
|
* Internally, the `key` is converted to a #GQuark using g_quark_from_string().
|
||||||
|
* This means a copy of `key` is kept permanently (even after `object` has been
|
||||||
|
* finalized) — so it is recommended to only use a small, bounded set of values
|
||||||
|
* for `key` in your program, to avoid the #GQuark storage growing unbounded.
|
||||||
|
* @param key name of the key
|
||||||
|
* @param data data to associate with that key
|
||||||
|
*/
|
||||||
|
set_data(key: string, data?: any | null): void;
|
||||||
|
/**
|
||||||
|
* Sets a property on an object.
|
||||||
|
* @param property_name The name of the property to set
|
||||||
|
* @param value The value to set the property to
|
||||||
|
*/
|
||||||
|
set_property(property_name: string, value: GObject.Value | any): void;
|
||||||
|
/**
|
||||||
|
* Remove a specified datum from the object's data associations,
|
||||||
|
* without invoking the association's destroy handler.
|
||||||
|
* @param key name of the key
|
||||||
|
* @returns the data if found, or %NULL if no such data exists.
|
||||||
|
*/
|
||||||
|
steal_data(key: string): any | null;
|
||||||
|
/**
|
||||||
|
* This function gets back user data pointers stored via
|
||||||
|
* g_object_set_qdata() and removes the `data` from object
|
||||||
|
* without invoking its destroy() function (if any was
|
||||||
|
* set).
|
||||||
|
* Usually, calling this function is only required to update
|
||||||
|
* user data pointers with a destroy notifier, for example:
|
||||||
|
*
|
||||||
|
* ```c
|
||||||
|
* void
|
||||||
|
* object_add_to_user_list (GObject *object,
|
||||||
|
* const gchar *new_string)
|
||||||
|
* {
|
||||||
|
* // the quark, naming the object data
|
||||||
|
* GQuark quark_string_list = g_quark_from_static_string ("my-string-list");
|
||||||
|
* // retrieve the old string list
|
||||||
|
* GList *list = g_object_steal_qdata (object, quark_string_list);
|
||||||
|
*
|
||||||
|
* // prepend new string
|
||||||
|
* list = g_list_prepend (list, g_strdup (new_string));
|
||||||
|
* // this changed 'list', so we need to set it again
|
||||||
|
* g_object_set_qdata_full (object, quark_string_list, list, free_string_list);
|
||||||
|
* }
|
||||||
|
* static void
|
||||||
|
* free_string_list (gpointer data)
|
||||||
|
* {
|
||||||
|
* GList *node, *list = data;
|
||||||
|
*
|
||||||
|
* for (node = list; node; node = node->next)
|
||||||
|
* g_free (node->data);
|
||||||
|
* g_list_free (list);
|
||||||
|
* }
|
||||||
|
* ```
|
||||||
|
*
|
||||||
|
* Using g_object_get_qdata() in the above example, instead of
|
||||||
|
* g_object_steal_qdata() would have left the destroy function set,
|
||||||
|
* and thus the partial string list would have been freed upon
|
||||||
|
* g_object_set_qdata_full().
|
||||||
|
* @param quark A #GQuark, naming the user data pointer
|
||||||
|
* @returns The user data pointer set, or %NULL
|
||||||
|
*/
|
||||||
|
steal_qdata(quark: GLib.Quark): any | null;
|
||||||
|
/**
|
||||||
|
* Reverts the effect of a previous call to
|
||||||
|
* g_object_freeze_notify(). The freeze count is decreased on `object`
|
||||||
|
* and when it reaches zero, queued "notify" signals are emitted.
|
||||||
|
*
|
||||||
|
* Duplicate notifications for each property are squashed so that at most one
|
||||||
|
* #GObject::notify signal is emitted for each property, in the reverse order
|
||||||
|
* in which they have been queued.
|
||||||
|
*
|
||||||
|
* It is an error to call this function when the freeze count is zero.
|
||||||
|
*/
|
||||||
|
thaw_notify(): void;
|
||||||
|
/**
|
||||||
|
* Decreases the reference count of `object`. When its reference count
|
||||||
|
* drops to 0, the object is finalized (i.e. its memory is freed).
|
||||||
|
*
|
||||||
|
* If the pointer to the #GObject may be reused in future (for example, if it is
|
||||||
|
* an instance variable of another object), it is recommended to clear the
|
||||||
|
* pointer to %NULL rather than retain a dangling pointer to a potentially
|
||||||
|
* invalid #GObject instance. Use g_clear_object() for this.
|
||||||
|
*/
|
||||||
|
unref(): void;
|
||||||
|
/**
|
||||||
|
* This function essentially limits the life time of the `closure` to
|
||||||
|
* the life time of the object. That is, when the object is finalized,
|
||||||
|
* the `closure` is invalidated by calling g_closure_invalidate() on
|
||||||
|
* it, in order to prevent invocations of the closure with a finalized
|
||||||
|
* (nonexisting) object. Also, g_object_ref() and g_object_unref() are
|
||||||
|
* added as marshal guards to the `closure,` to ensure that an extra
|
||||||
|
* reference count is held on `object` during invocation of the
|
||||||
|
* `closure`. Usually, this function will be called on closures that
|
||||||
|
* use this `object` as closure data.
|
||||||
|
* @param closure #GClosure to watch
|
||||||
|
*/
|
||||||
|
watch_closure(closure: GObject.Closure): void;
|
||||||
|
/**
|
||||||
|
* the `constructed` function is called by g_object_new() as the
|
||||||
|
* final step of the object creation process. At the point of the call, all
|
||||||
|
* construction properties have been set on the object. The purpose of this
|
||||||
|
* call is to allow for object initialisation steps that can only be performed
|
||||||
|
* after construction properties have been set. `constructed` implementors
|
||||||
|
* should chain up to the `constructed` call of their parent class to allow it
|
||||||
|
* to complete its initialisation.
|
||||||
|
*/
|
||||||
|
vfunc_constructed(): void;
|
||||||
|
/**
|
||||||
|
* emits property change notification for a bunch
|
||||||
|
* of properties. Overriding `dispatch_properties_changed` should be rarely
|
||||||
|
* needed.
|
||||||
|
* @param n_pspecs
|
||||||
|
* @param pspecs
|
||||||
|
*/
|
||||||
|
vfunc_dispatch_properties_changed(n_pspecs: number, pspecs: GObject.ParamSpec): void;
|
||||||
|
/**
|
||||||
|
* the `dispose` function is supposed to drop all references to other
|
||||||
|
* objects, but keep the instance otherwise intact, so that client method
|
||||||
|
* invocations still work. It may be run multiple times (due to reference
|
||||||
|
* loops). Before returning, `dispose` should chain up to the `dispose` method
|
||||||
|
* of the parent class.
|
||||||
|
*/
|
||||||
|
vfunc_dispose(): void;
|
||||||
|
/**
|
||||||
|
* instance finalization function, should finish the finalization of
|
||||||
|
* the instance begun in `dispose` and chain up to the `finalize` method of the
|
||||||
|
* parent class.
|
||||||
|
*/
|
||||||
|
vfunc_finalize(): void;
|
||||||
|
/**
|
||||||
|
* the generic getter for all properties of this type. Should be
|
||||||
|
* overridden for every type with properties.
|
||||||
|
* @param property_id
|
||||||
|
* @param value
|
||||||
|
* @param pspec
|
||||||
|
*/
|
||||||
|
vfunc_get_property(property_id: number, value: GObject.Value | any, pspec: GObject.ParamSpec): void;
|
||||||
|
/**
|
||||||
|
* Emits a "notify" signal for the property `property_name` on `object`.
|
||||||
|
*
|
||||||
|
* When possible, eg. when signaling a property change from within the class
|
||||||
|
* that registered the property, you should use g_object_notify_by_pspec()
|
||||||
|
* instead.
|
||||||
|
*
|
||||||
|
* Note that emission of the notify signal may be blocked with
|
||||||
|
* g_object_freeze_notify(). In this case, the signal emissions are queued
|
||||||
|
* and will be emitted (in reverse order) when g_object_thaw_notify() is
|
||||||
|
* called.
|
||||||
|
* @param pspec
|
||||||
|
*/
|
||||||
|
vfunc_notify(pspec: GObject.ParamSpec): void;
|
||||||
|
/**
|
||||||
|
* the generic setter for all properties of this type. Should be
|
||||||
|
* overridden for every type with properties. If implementations of
|
||||||
|
* `set_property` don't emit property change notification explicitly, this will
|
||||||
|
* be done implicitly by the type system. However, if the notify signal is
|
||||||
|
* emitted explicitly, the type system will not emit it a second time.
|
||||||
|
* @param property_id
|
||||||
|
* @param value
|
||||||
|
* @param pspec
|
||||||
|
*/
|
||||||
|
vfunc_set_property(property_id: number, value: GObject.Value | any, pspec: GObject.ParamSpec): void;
|
||||||
|
/**
|
||||||
|
* Disconnects a handler from an instance so it will not be called during any future or currently ongoing emissions of the signal it has been connected to.
|
||||||
|
* @param id Handler ID of the handler to be disconnected
|
||||||
|
*/
|
||||||
|
disconnect(id: number): void;
|
||||||
|
/**
|
||||||
|
* Sets multiple properties of an object at once. The properties argument should be a dictionary mapping property names to values.
|
||||||
|
* @param properties Object containing the properties to set
|
||||||
|
*/
|
||||||
|
set(properties: { [key: string]: any }): void;
|
||||||
|
/**
|
||||||
|
* Blocks a handler of an instance so it will not be called during any signal emissions
|
||||||
|
* @param id Handler ID of the handler to be blocked
|
||||||
|
*/
|
||||||
|
block_signal_handler(id: number): void;
|
||||||
|
/**
|
||||||
|
* Unblocks a handler so it will be called again during any signal emissions
|
||||||
|
* @param id Handler ID of the handler to be unblocked
|
||||||
|
*/
|
||||||
|
unblock_signal_handler(id: number): void;
|
||||||
|
/**
|
||||||
|
* Stops a signal's emission by the given signal name. This will prevent the default handler and any subsequent signal handlers from being invoked.
|
||||||
|
* @param detailedName Name of the signal to stop emission of
|
||||||
|
*/
|
||||||
|
stop_emission_by_name(detailedName: string): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type DecoderClass = typeof Decoder;
|
||||||
|
type FontClass = typeof Font;
|
||||||
|
type FontMapClass = typeof FontMap;
|
||||||
|
abstract class FontMapPrivate {
|
||||||
|
static $gtype: GObject.GType<FontMapPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 PangoFc;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://PangoFc' {
|
||||||
|
import PangoFc10 from 'gi://PangoFc?version=1.0';
|
||||||
|
export default PangoFc10;
|
||||||
|
}
|
||||||
|
// END
|
777
@girs/pangoft2-1.0.d.ts
vendored
Normal file
777
@girs/pangoft2-1.0.d.ts
vendored
Normal file
|
@ -0,0 +1,777 @@
|
||||||
|
/// <reference path="./freetype2-2.0.d.ts" />
|
||||||
|
/// <reference path="./pangofc-1.0.d.ts" />
|
||||||
|
/// <reference path="./fontconfig-2.0.d.ts" />
|
||||||
|
/// <reference path="./pango-1.0.d.ts" />
|
||||||
|
/// <reference path="./cairo-1.0.d.ts" />
|
||||||
|
/// <reference path="./cairo.d.ts" />
|
||||||
|
/// <reference path="./gobject-2.0.d.ts" />
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./harfbuzz-0.0.d.ts" />
|
||||||
|
/// <reference path="./gio-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://PangoFT2?version=1.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type freetype2 from 'gi://freetype2?version=2.0';
|
||||||
|
import type PangoFc from 'gi://PangoFc?version=1.0';
|
||||||
|
import type fontconfig from 'gi://fontconfig?version=2.0';
|
||||||
|
import type Pango from 'gi://Pango?version=1.0';
|
||||||
|
import type cairo from 'cairo';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type HarfBuzz from 'gi://HarfBuzz?version=0.0';
|
||||||
|
import type Gio from 'gi://Gio?version=2.0';
|
||||||
|
import type GModule from 'gi://GModule?version=2.0';
|
||||||
|
|
||||||
|
export namespace PangoFT2 {
|
||||||
|
/**
|
||||||
|
* PangoFT2-1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the `PangoCoverage` for a `PangoFT2Font`.
|
||||||
|
*
|
||||||
|
* Use [method`Pango`.Font.get_coverage] instead.
|
||||||
|
* @param font a Pango FT2 font
|
||||||
|
* @param language a language tag.
|
||||||
|
* @returns a `PangoCoverage`
|
||||||
|
*/
|
||||||
|
function font_get_coverage(font: Pango.Font, language: Pango.Language): Pango.Coverage;
|
||||||
|
/**
|
||||||
|
* Retrieves kerning information for a combination of two glyphs.
|
||||||
|
*
|
||||||
|
* Use pango_fc_font_kern_glyphs() instead.
|
||||||
|
* @param font a `PangoFont`
|
||||||
|
* @param left the left `PangoGlyph`
|
||||||
|
* @param right the right `PangoGlyph`
|
||||||
|
* @returns The amount of kerning (in Pango units) to apply for the given combination of glyphs.
|
||||||
|
*/
|
||||||
|
function font_get_kerning(font: Pango.Font, left: Pango.Glyph, right: Pango.Glyph): number;
|
||||||
|
/**
|
||||||
|
* Return the index of a glyph suitable for drawing unknown
|
||||||
|
* characters with `font,` or %PANGO_GLYPH_EMPTY if no suitable
|
||||||
|
* glyph found.
|
||||||
|
*
|
||||||
|
* If you want to draw an unknown-box for a character that
|
||||||
|
* is not covered by the font, use PANGO_GET_UNKNOWN_GLYPH()
|
||||||
|
* instead.
|
||||||
|
* @param font a `PangoFont`
|
||||||
|
* @returns a glyph index into @font, or %PANGO_GLYPH_EMPTY
|
||||||
|
*/
|
||||||
|
function get_unknown_glyph(font: Pango.Font): Pango.Glyph;
|
||||||
|
/**
|
||||||
|
* Renders a `PangoGlyphString` onto a FreeType2 bitmap.
|
||||||
|
* @param bitmap the FreeType2 bitmap onto which to draw the string
|
||||||
|
* @param font the font in which to draw the string
|
||||||
|
* @param glyphs the glyph string to draw
|
||||||
|
* @param x the x position of the start of the string (in pixels)
|
||||||
|
* @param y the y position of the baseline (in pixels)
|
||||||
|
*/
|
||||||
|
function render(
|
||||||
|
bitmap: freetype2.Bitmap,
|
||||||
|
font: Pango.Font,
|
||||||
|
glyphs: Pango.GlyphString,
|
||||||
|
x: number,
|
||||||
|
y: number,
|
||||||
|
): void;
|
||||||
|
/**
|
||||||
|
* Render a `PangoLayout` onto a FreeType2 bitmap
|
||||||
|
* @param bitmap a FT_Bitmap to render the layout onto
|
||||||
|
* @param layout a `PangoLayout`
|
||||||
|
* @param x the X position of the left of the layout (in pixels)
|
||||||
|
* @param y the Y position of the top of the layout (in pixels)
|
||||||
|
*/
|
||||||
|
function render_layout(bitmap: freetype2.Bitmap, layout: Pango.Layout, x: number, y: number): void;
|
||||||
|
/**
|
||||||
|
* Render a `PangoLayoutLine` onto a FreeType2 bitmap
|
||||||
|
* @param bitmap a FT_Bitmap to render the line onto
|
||||||
|
* @param line a `PangoLayoutLine`
|
||||||
|
* @param x the x position of start of string (in pixels)
|
||||||
|
* @param y the y position of baseline (in pixels)
|
||||||
|
*/
|
||||||
|
function render_layout_line(bitmap: freetype2.Bitmap, line: Pango.LayoutLine, x: number, y: number): void;
|
||||||
|
/**
|
||||||
|
* Render a `PangoLayoutLine` onto a FreeType2 bitmap, with he
|
||||||
|
* location specified in fixed-point Pango units rather than
|
||||||
|
* pixels.
|
||||||
|
*
|
||||||
|
* (Using this will avoid extra inaccuracies from rounding
|
||||||
|
* to integer pixels multiple times, even if the final glyph
|
||||||
|
* positions are integers.)
|
||||||
|
* @param bitmap a FT_Bitmap to render the line onto
|
||||||
|
* @param line a `PangoLayoutLine`
|
||||||
|
* @param x the x position of start of string (in Pango units)
|
||||||
|
* @param y the y position of baseline (in Pango units)
|
||||||
|
*/
|
||||||
|
function render_layout_line_subpixel(
|
||||||
|
bitmap: freetype2.Bitmap,
|
||||||
|
line: Pango.LayoutLine,
|
||||||
|
x: number,
|
||||||
|
y: number,
|
||||||
|
): void;
|
||||||
|
/**
|
||||||
|
* Render a `PangoLayout` onto a FreeType2 bitmap, with he
|
||||||
|
* location specified in fixed-point Pango units rather than
|
||||||
|
* pixels.
|
||||||
|
*
|
||||||
|
* (Using this will avoid extra inaccuracies from rounding
|
||||||
|
* to integer pixels multiple times, even if the final glyph
|
||||||
|
* positions are integers.)
|
||||||
|
* @param bitmap a FT_Bitmap to render the layout onto
|
||||||
|
* @param layout a `PangoLayout`
|
||||||
|
* @param x the X position of the left of the layout (in Pango units)
|
||||||
|
* @param y the Y position of the top of the layout (in Pango units)
|
||||||
|
*/
|
||||||
|
function render_layout_subpixel(bitmap: freetype2.Bitmap, layout: Pango.Layout, x: number, y: number): void;
|
||||||
|
/**
|
||||||
|
* Renders a `PangoGlyphString` onto a FreeType2 bitmap, possibly
|
||||||
|
* transforming the layed-out coordinates through a transformation
|
||||||
|
* matrix.
|
||||||
|
*
|
||||||
|
* Note that the transformation matrix for `font` is not
|
||||||
|
* changed, so to produce correct rendering results, the `font`
|
||||||
|
* must have been loaded using a `PangoContext` with an identical
|
||||||
|
* transformation matrix to that passed in to this function.
|
||||||
|
* @param bitmap the FreeType2 bitmap onto which to draw the string
|
||||||
|
* @param matrix a `PangoMatrix`
|
||||||
|
* @param font the font in which to draw the string
|
||||||
|
* @param glyphs the glyph string to draw
|
||||||
|
* @param x the x position of the start of the string (in Pango units in user space coordinates)
|
||||||
|
* @param y the y position of the baseline (in Pango units in user space coordinates)
|
||||||
|
*/
|
||||||
|
function render_transformed(
|
||||||
|
bitmap: freetype2.Bitmap,
|
||||||
|
matrix: Pango.Matrix | null,
|
||||||
|
font: Pango.Font,
|
||||||
|
glyphs: Pango.GlyphString,
|
||||||
|
x: number,
|
||||||
|
y: number,
|
||||||
|
): void;
|
||||||
|
/**
|
||||||
|
* Free the global fontmap. (See pango_ft2_font_map_for_display())
|
||||||
|
* Use of the global PangoFT2 fontmap is deprecated.
|
||||||
|
*/
|
||||||
|
function shutdown_display(): void;
|
||||||
|
interface SubstituteFunc {
|
||||||
|
(pattern: fontconfig.Pattern, data?: any | null): void;
|
||||||
|
}
|
||||||
|
namespace FontMap {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps<A extends GObject.Object = GObject.Object>
|
||||||
|
extends PangoFc.FontMap.ConstructorProps<A>,
|
||||||
|
Gio.ListModel.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The `PangoFT2FontMap` is the `PangoFontMap` implementation for FreeType fonts.
|
||||||
|
*/
|
||||||
|
class FontMap<A extends GObject.Object = GObject.Object>
|
||||||
|
extends PangoFc.FontMap<A>
|
||||||
|
implements Gio.ListModel<A>
|
||||||
|
{
|
||||||
|
static $gtype: GObject.GType<FontMap>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<FontMap.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](): FontMap;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets a function that will be called to do final configuration
|
||||||
|
* substitution on a `FcPattern` before it is used to load
|
||||||
|
* the font.
|
||||||
|
*
|
||||||
|
* This function can be used to do things like set
|
||||||
|
* hinting and antialiasing options.
|
||||||
|
* @param func function to call to to do final config tweaking on #FcPattern objects.
|
||||||
|
*/
|
||||||
|
set_default_substitute(func: SubstituteFunc): void;
|
||||||
|
// Conflicted with PangoFc.FontMap.set_default_substitute
|
||||||
|
set_default_substitute(...args: never[]): any;
|
||||||
|
/**
|
||||||
|
* Sets the horizontal and vertical resolutions for the fontmap.
|
||||||
|
* @param dpi_x dots per inch in the X direction
|
||||||
|
* @param dpi_y dots per inch in the Y direction
|
||||||
|
*/
|
||||||
|
set_resolution(dpi_x: number, dpi_y: number): void;
|
||||||
|
/**
|
||||||
|
* Call this function any time the results of the
|
||||||
|
* default substitution function set with
|
||||||
|
* pango_ft2_font_map_set_default_substitute() change.
|
||||||
|
*
|
||||||
|
* That is, if your substitution function will return different
|
||||||
|
* results for the same input pattern, you must call this function.
|
||||||
|
*/
|
||||||
|
substitute_changed(): void;
|
||||||
|
|
||||||
|
// Inherited methods
|
||||||
|
/**
|
||||||
|
* Gets the type of the items in `list`.
|
||||||
|
*
|
||||||
|
* All items returned from g_list_model_get_item() are of the type
|
||||||
|
* returned by this function, or a subtype, or if the type is an
|
||||||
|
* interface, they are an implementation of that interface.
|
||||||
|
*
|
||||||
|
* The item type of a #GListModel can not change during the life of the
|
||||||
|
* model.
|
||||||
|
* @returns the #GType of the items contained in @list.
|
||||||
|
*/
|
||||||
|
get_item_type(): GObject.GType;
|
||||||
|
/**
|
||||||
|
* Gets the number of items in `list`.
|
||||||
|
*
|
||||||
|
* Depending on the model implementation, calling this function may be
|
||||||
|
* less efficient than iterating the list with increasing values for
|
||||||
|
* `position` until g_list_model_get_item() returns %NULL.
|
||||||
|
* @returns the number of items in @list.
|
||||||
|
*/
|
||||||
|
get_n_items(): number;
|
||||||
|
/**
|
||||||
|
* Get the item at `position`.
|
||||||
|
*
|
||||||
|
* If `position` is greater than the number of items in `list,` %NULL is
|
||||||
|
* returned.
|
||||||
|
*
|
||||||
|
* %NULL is never returned for an index that is smaller than the length
|
||||||
|
* of the list.
|
||||||
|
*
|
||||||
|
* This function is meant to be used by language bindings in place
|
||||||
|
* of g_list_model_get_item().
|
||||||
|
*
|
||||||
|
* See also: g_list_model_get_n_items()
|
||||||
|
* @param position the position of the item to fetch
|
||||||
|
* @returns the object at @position.
|
||||||
|
*/
|
||||||
|
get_item(position: number): A | null;
|
||||||
|
/**
|
||||||
|
* Emits the #GListModel::items-changed signal on `list`.
|
||||||
|
*
|
||||||
|
* This function should only be called by classes implementing
|
||||||
|
* #GListModel. It has to be called after the internal representation
|
||||||
|
* of `list` has been updated, because handlers connected to this signal
|
||||||
|
* might query the new state of the list.
|
||||||
|
*
|
||||||
|
* Implementations must only make changes to the model (as visible to
|
||||||
|
* its consumer) in places that will not cause problems for that
|
||||||
|
* consumer. For models that are driven directly by a write API (such
|
||||||
|
* as #GListStore), changes can be reported in response to uses of that
|
||||||
|
* API. For models that represent remote data, changes should only be
|
||||||
|
* made from a fresh mainloop dispatch. It is particularly not
|
||||||
|
* permitted to make changes in response to a call to the #GListModel
|
||||||
|
* consumer API.
|
||||||
|
*
|
||||||
|
* Stated another way: in general, it is assumed that code making a
|
||||||
|
* series of accesses to the model via the API, without returning to the
|
||||||
|
* mainloop, and without calling other code, will continue to view the
|
||||||
|
* same contents of the model.
|
||||||
|
* @param position the position at which @list changed
|
||||||
|
* @param removed the number of items removed
|
||||||
|
* @param added the number of items added
|
||||||
|
*/
|
||||||
|
items_changed(position: number, removed: number, added: number): void;
|
||||||
|
/**
|
||||||
|
* Get the item at `position`. If `position` is greater than the number of
|
||||||
|
* items in `list,` %NULL is returned.
|
||||||
|
*
|
||||||
|
* %NULL is never returned for an index that is smaller than the length
|
||||||
|
* of the list. See g_list_model_get_n_items().
|
||||||
|
*
|
||||||
|
* The same #GObject instance may not appear more than once in a #GListModel.
|
||||||
|
* @param position the position of the item to fetch
|
||||||
|
*/
|
||||||
|
vfunc_get_item(position: number): A | null;
|
||||||
|
/**
|
||||||
|
* Gets the type of the items in `list`.
|
||||||
|
*
|
||||||
|
* All items returned from g_list_model_get_item() are of the type
|
||||||
|
* returned by this function, or a subtype, or if the type is an
|
||||||
|
* interface, they are an implementation of that interface.
|
||||||
|
*
|
||||||
|
* The item type of a #GListModel can not change during the life of the
|
||||||
|
* model.
|
||||||
|
*/
|
||||||
|
vfunc_get_item_type(): GObject.GType;
|
||||||
|
/**
|
||||||
|
* Gets the number of items in `list`.
|
||||||
|
*
|
||||||
|
* Depending on the model implementation, calling this function may be
|
||||||
|
* less efficient than iterating the list with increasing values for
|
||||||
|
* `position` until g_list_model_get_item() returns %NULL.
|
||||||
|
*/
|
||||||
|
vfunc_get_n_items(): number;
|
||||||
|
/**
|
||||||
|
* Creates a binding between `source_property` on `source` and `target_property`
|
||||||
|
* on `target`.
|
||||||
|
*
|
||||||
|
* Whenever the `source_property` is changed the `target_property` is
|
||||||
|
* updated using the same value. For instance:
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* ```c
|
||||||
|
* g_object_bind_property (action, "active", widget, "sensitive", 0);
|
||||||
|
* ```
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* Will result in the "sensitive" property of the widget #GObject instance to be
|
||||||
|
* updated with the same value of the "active" property of the action #GObject
|
||||||
|
* instance.
|
||||||
|
*
|
||||||
|
* If `flags` contains %G_BINDING_BIDIRECTIONAL then the binding will be mutual:
|
||||||
|
* if `target_property` on `target` changes then the `source_property` on `source`
|
||||||
|
* will be updated as well.
|
||||||
|
*
|
||||||
|
* The binding will automatically be removed when either the `source` or the
|
||||||
|
* `target` instances are finalized. To remove the binding without affecting the
|
||||||
|
* `source` and the `target` you can just call g_object_unref() on the returned
|
||||||
|
* #GBinding instance.
|
||||||
|
*
|
||||||
|
* Removing the binding by calling g_object_unref() on it must only be done if
|
||||||
|
* the binding, `source` and `target` are only used from a single thread and it
|
||||||
|
* is clear that both `source` and `target` outlive the binding. Especially it
|
||||||
|
* is not safe to rely on this if the binding, `source` or `target` can be
|
||||||
|
* finalized from different threads. Keep another reference to the binding and
|
||||||
|
* use g_binding_unbind() instead to be on the safe side.
|
||||||
|
*
|
||||||
|
* A #GObject can have multiple bindings.
|
||||||
|
* @param source_property the property on @source to bind
|
||||||
|
* @param target the target #GObject
|
||||||
|
* @param target_property the property on @target to bind
|
||||||
|
* @param flags flags to pass to #GBinding
|
||||||
|
* @returns the #GBinding instance representing the binding between the two #GObject instances. The binding is released whenever the #GBinding reference count reaches zero.
|
||||||
|
*/
|
||||||
|
bind_property(
|
||||||
|
source_property: string,
|
||||||
|
target: GObject.Object,
|
||||||
|
target_property: string,
|
||||||
|
flags: GObject.BindingFlags | null,
|
||||||
|
): GObject.Binding;
|
||||||
|
/**
|
||||||
|
* Complete version of g_object_bind_property().
|
||||||
|
*
|
||||||
|
* Creates a binding between `source_property` on `source` and `target_property`
|
||||||
|
* on `target,` allowing you to set the transformation functions to be used by
|
||||||
|
* the binding.
|
||||||
|
*
|
||||||
|
* If `flags` contains %G_BINDING_BIDIRECTIONAL then the binding will be mutual:
|
||||||
|
* if `target_property` on `target` changes then the `source_property` on `source`
|
||||||
|
* will be updated as well. The `transform_from` function is only used in case
|
||||||
|
* of bidirectional bindings, otherwise it will be ignored
|
||||||
|
*
|
||||||
|
* The binding will automatically be removed when either the `source` or the
|
||||||
|
* `target` instances are finalized. This will release the reference that is
|
||||||
|
* being held on the #GBinding instance; if you want to hold on to the
|
||||||
|
* #GBinding instance, you will need to hold a reference to it.
|
||||||
|
*
|
||||||
|
* To remove the binding, call g_binding_unbind().
|
||||||
|
*
|
||||||
|
* A #GObject can have multiple bindings.
|
||||||
|
*
|
||||||
|
* The same `user_data` parameter will be used for both `transform_to`
|
||||||
|
* and `transform_from` transformation functions; the `notify` function will
|
||||||
|
* be called once, when the binding is removed. If you need different data
|
||||||
|
* for each transformation function, please use
|
||||||
|
* g_object_bind_property_with_closures() instead.
|
||||||
|
* @param source_property the property on @source to bind
|
||||||
|
* @param target the target #GObject
|
||||||
|
* @param target_property the property on @target to bind
|
||||||
|
* @param flags flags to pass to #GBinding
|
||||||
|
* @param transform_to the transformation function from the @source to the @target, or %NULL to use the default
|
||||||
|
* @param transform_from the transformation function from the @target to the @source, or %NULL to use the default
|
||||||
|
* @param notify a function to call when disposing the binding, to free resources used by the transformation functions, or %NULL if not required
|
||||||
|
* @returns the #GBinding instance representing the binding between the two #GObject instances. The binding is released whenever the #GBinding reference count reaches zero.
|
||||||
|
*/
|
||||||
|
bind_property_full(
|
||||||
|
source_property: string,
|
||||||
|
target: GObject.Object,
|
||||||
|
target_property: string,
|
||||||
|
flags: GObject.BindingFlags | null,
|
||||||
|
transform_to?: GObject.BindingTransformFunc | null,
|
||||||
|
transform_from?: GObject.BindingTransformFunc | null,
|
||||||
|
notify?: GLib.DestroyNotify | null,
|
||||||
|
): GObject.Binding;
|
||||||
|
// Conflicted with GObject.Object.bind_property_full
|
||||||
|
bind_property_full(...args: never[]): any;
|
||||||
|
/**
|
||||||
|
* This function is intended for #GObject implementations to re-enforce
|
||||||
|
* a [floating][floating-ref] object reference. Doing this is seldom
|
||||||
|
* required: all #GInitiallyUnowneds are created with a floating reference
|
||||||
|
* which usually just needs to be sunken by calling g_object_ref_sink().
|
||||||
|
*/
|
||||||
|
force_floating(): void;
|
||||||
|
/**
|
||||||
|
* Increases the freeze count on `object`. If the freeze count is
|
||||||
|
* non-zero, the emission of "notify" signals on `object` is
|
||||||
|
* stopped. The signals are queued until the freeze count is decreased
|
||||||
|
* to zero. Duplicate notifications are squashed so that at most one
|
||||||
|
* #GObject::notify signal is emitted for each property modified while the
|
||||||
|
* object is frozen.
|
||||||
|
*
|
||||||
|
* This is necessary for accessors that modify multiple properties to prevent
|
||||||
|
* premature notification while the object is still being modified.
|
||||||
|
*/
|
||||||
|
freeze_notify(): void;
|
||||||
|
/**
|
||||||
|
* Gets a named field from the objects table of associations (see g_object_set_data()).
|
||||||
|
* @param key name of the key for that association
|
||||||
|
* @returns the data if found, or %NULL if no such data exists.
|
||||||
|
*/
|
||||||
|
get_data(key: string): any | null;
|
||||||
|
/**
|
||||||
|
* Gets a property of an object.
|
||||||
|
*
|
||||||
|
* The value can be:
|
||||||
|
* - an empty GObject.Value initialized by G_VALUE_INIT, which will be automatically initialized with the expected type of the property (since GLib 2.60)
|
||||||
|
* - a GObject.Value initialized with the expected type of the property
|
||||||
|
* - a GObject.Value initialized with a type to which the expected type of the property can be transformed
|
||||||
|
*
|
||||||
|
* In general, a copy is made of the property contents and the caller is responsible for freeing the memory by calling GObject.Value.unset.
|
||||||
|
*
|
||||||
|
* Note that GObject.Object.get_property is really intended for language bindings, GObject.Object.get is much more convenient for C programming.
|
||||||
|
* @param property_name The name of the property to get
|
||||||
|
* @param value Return location for the property value. Can be an empty GObject.Value initialized by G_VALUE_INIT (auto-initialized with expected type since GLib 2.60), a GObject.Value initialized with the expected property type, or a GObject.Value initialized with a transformable type
|
||||||
|
*/
|
||||||
|
get_property(property_name: string, value: GObject.Value | any): any;
|
||||||
|
/**
|
||||||
|
* This function gets back user data pointers stored via
|
||||||
|
* g_object_set_qdata().
|
||||||
|
* @param quark A #GQuark, naming the user data pointer
|
||||||
|
* @returns The user data pointer set, or %NULL
|
||||||
|
*/
|
||||||
|
get_qdata(quark: GLib.Quark): any | null;
|
||||||
|
/**
|
||||||
|
* Gets `n_properties` properties for an `object`.
|
||||||
|
* Obtained properties will be set to `values`. All properties must be valid.
|
||||||
|
* Warnings will be emitted and undefined behaviour may result if invalid
|
||||||
|
* properties are passed in.
|
||||||
|
* @param names the names of each property to get
|
||||||
|
* @param values the values of each property to get
|
||||||
|
*/
|
||||||
|
getv(names: string[], values: (GObject.Value | any)[]): void;
|
||||||
|
/**
|
||||||
|
* Checks whether `object` has a [floating][floating-ref] reference.
|
||||||
|
* @returns %TRUE if @object has a floating reference
|
||||||
|
*/
|
||||||
|
is_floating(): boolean;
|
||||||
|
/**
|
||||||
|
* Emits a "notify" signal for the property `property_name` on `object`.
|
||||||
|
*
|
||||||
|
* When possible, eg. when signaling a property change from within the class
|
||||||
|
* that registered the property, you should use g_object_notify_by_pspec()
|
||||||
|
* instead.
|
||||||
|
*
|
||||||
|
* Note that emission of the notify signal may be blocked with
|
||||||
|
* g_object_freeze_notify(). In this case, the signal emissions are queued
|
||||||
|
* and will be emitted (in reverse order) when g_object_thaw_notify() is
|
||||||
|
* called.
|
||||||
|
* @param property_name the name of a property installed on the class of @object.
|
||||||
|
*/
|
||||||
|
notify(property_name: string): void;
|
||||||
|
/**
|
||||||
|
* Emits a "notify" signal for the property specified by `pspec` on `object`.
|
||||||
|
*
|
||||||
|
* This function omits the property name lookup, hence it is faster than
|
||||||
|
* g_object_notify().
|
||||||
|
*
|
||||||
|
* One way to avoid using g_object_notify() from within the
|
||||||
|
* class that registered the properties, and using g_object_notify_by_pspec()
|
||||||
|
* instead, is to store the GParamSpec used with
|
||||||
|
* g_object_class_install_property() inside a static array, e.g.:
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* ```c
|
||||||
|
* typedef enum
|
||||||
|
* {
|
||||||
|
* PROP_FOO = 1,
|
||||||
|
* PROP_LAST
|
||||||
|
* } MyObjectProperty;
|
||||||
|
*
|
||||||
|
* static GParamSpec *properties[PROP_LAST];
|
||||||
|
*
|
||||||
|
* static void
|
||||||
|
* my_object_class_init (MyObjectClass *klass)
|
||||||
|
* {
|
||||||
|
* properties[PROP_FOO] = g_param_spec_int ("foo", NULL, NULL,
|
||||||
|
* 0, 100,
|
||||||
|
* 50,
|
||||||
|
* G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
|
||||||
|
* g_object_class_install_property (gobject_class,
|
||||||
|
* PROP_FOO,
|
||||||
|
* properties[PROP_FOO]);
|
||||||
|
* }
|
||||||
|
* ```
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* and then notify a change on the "foo" property with:
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* ```c
|
||||||
|
* g_object_notify_by_pspec (self, properties[PROP_FOO]);
|
||||||
|
* ```
|
||||||
|
*
|
||||||
|
* @param pspec the #GParamSpec of a property installed on the class of @object.
|
||||||
|
*/
|
||||||
|
notify_by_pspec(pspec: GObject.ParamSpec): void;
|
||||||
|
/**
|
||||||
|
* Increases the reference count of `object`.
|
||||||
|
*
|
||||||
|
* Since GLib 2.56, if `GLIB_VERSION_MAX_ALLOWED` is 2.56 or greater, the type
|
||||||
|
* of `object` will be propagated to the return type (using the GCC typeof()
|
||||||
|
* extension), so any casting the caller needs to do on the return type must be
|
||||||
|
* explicit.
|
||||||
|
* @returns the same @object
|
||||||
|
*/
|
||||||
|
ref(): GObject.Object;
|
||||||
|
/**
|
||||||
|
* Increase the reference count of `object,` and possibly remove the
|
||||||
|
* [floating][floating-ref] reference, if `object` has a floating reference.
|
||||||
|
*
|
||||||
|
* In other words, if the object is floating, then this call "assumes
|
||||||
|
* ownership" of the floating reference, converting it to a normal
|
||||||
|
* reference by clearing the floating flag while leaving the reference
|
||||||
|
* count unchanged. If the object is not floating, then this call
|
||||||
|
* adds a new normal reference increasing the reference count by one.
|
||||||
|
*
|
||||||
|
* Since GLib 2.56, the type of `object` will be propagated to the return type
|
||||||
|
* under the same conditions as for g_object_ref().
|
||||||
|
* @returns @object
|
||||||
|
*/
|
||||||
|
ref_sink(): GObject.Object;
|
||||||
|
/**
|
||||||
|
* Releases all references to other objects. This can be used to break
|
||||||
|
* reference cycles.
|
||||||
|
*
|
||||||
|
* This function should only be called from object system implementations.
|
||||||
|
*/
|
||||||
|
run_dispose(): void;
|
||||||
|
/**
|
||||||
|
* Each object carries around a table of associations from
|
||||||
|
* strings to pointers. This function lets you set an association.
|
||||||
|
*
|
||||||
|
* If the object already had an association with that name,
|
||||||
|
* the old association will be destroyed.
|
||||||
|
*
|
||||||
|
* Internally, the `key` is converted to a #GQuark using g_quark_from_string().
|
||||||
|
* This means a copy of `key` is kept permanently (even after `object` has been
|
||||||
|
* finalized) — so it is recommended to only use a small, bounded set of values
|
||||||
|
* for `key` in your program, to avoid the #GQuark storage growing unbounded.
|
||||||
|
* @param key name of the key
|
||||||
|
* @param data data to associate with that key
|
||||||
|
*/
|
||||||
|
set_data(key: string, data?: any | null): void;
|
||||||
|
/**
|
||||||
|
* Sets a property on an object.
|
||||||
|
* @param property_name The name of the property to set
|
||||||
|
* @param value The value to set the property to
|
||||||
|
*/
|
||||||
|
set_property(property_name: string, value: GObject.Value | any): void;
|
||||||
|
/**
|
||||||
|
* Remove a specified datum from the object's data associations,
|
||||||
|
* without invoking the association's destroy handler.
|
||||||
|
* @param key name of the key
|
||||||
|
* @returns the data if found, or %NULL if no such data exists.
|
||||||
|
*/
|
||||||
|
steal_data(key: string): any | null;
|
||||||
|
/**
|
||||||
|
* This function gets back user data pointers stored via
|
||||||
|
* g_object_set_qdata() and removes the `data` from object
|
||||||
|
* without invoking its destroy() function (if any was
|
||||||
|
* set).
|
||||||
|
* Usually, calling this function is only required to update
|
||||||
|
* user data pointers with a destroy notifier, for example:
|
||||||
|
*
|
||||||
|
* ```c
|
||||||
|
* void
|
||||||
|
* object_add_to_user_list (GObject *object,
|
||||||
|
* const gchar *new_string)
|
||||||
|
* {
|
||||||
|
* // the quark, naming the object data
|
||||||
|
* GQuark quark_string_list = g_quark_from_static_string ("my-string-list");
|
||||||
|
* // retrieve the old string list
|
||||||
|
* GList *list = g_object_steal_qdata (object, quark_string_list);
|
||||||
|
*
|
||||||
|
* // prepend new string
|
||||||
|
* list = g_list_prepend (list, g_strdup (new_string));
|
||||||
|
* // this changed 'list', so we need to set it again
|
||||||
|
* g_object_set_qdata_full (object, quark_string_list, list, free_string_list);
|
||||||
|
* }
|
||||||
|
* static void
|
||||||
|
* free_string_list (gpointer data)
|
||||||
|
* {
|
||||||
|
* GList *node, *list = data;
|
||||||
|
*
|
||||||
|
* for (node = list; node; node = node->next)
|
||||||
|
* g_free (node->data);
|
||||||
|
* g_list_free (list);
|
||||||
|
* }
|
||||||
|
* ```
|
||||||
|
*
|
||||||
|
* Using g_object_get_qdata() in the above example, instead of
|
||||||
|
* g_object_steal_qdata() would have left the destroy function set,
|
||||||
|
* and thus the partial string list would have been freed upon
|
||||||
|
* g_object_set_qdata_full().
|
||||||
|
* @param quark A #GQuark, naming the user data pointer
|
||||||
|
* @returns The user data pointer set, or %NULL
|
||||||
|
*/
|
||||||
|
steal_qdata(quark: GLib.Quark): any | null;
|
||||||
|
/**
|
||||||
|
* Reverts the effect of a previous call to
|
||||||
|
* g_object_freeze_notify(). The freeze count is decreased on `object`
|
||||||
|
* and when it reaches zero, queued "notify" signals are emitted.
|
||||||
|
*
|
||||||
|
* Duplicate notifications for each property are squashed so that at most one
|
||||||
|
* #GObject::notify signal is emitted for each property, in the reverse order
|
||||||
|
* in which they have been queued.
|
||||||
|
*
|
||||||
|
* It is an error to call this function when the freeze count is zero.
|
||||||
|
*/
|
||||||
|
thaw_notify(): void;
|
||||||
|
/**
|
||||||
|
* Decreases the reference count of `object`. When its reference count
|
||||||
|
* drops to 0, the object is finalized (i.e. its memory is freed).
|
||||||
|
*
|
||||||
|
* If the pointer to the #GObject may be reused in future (for example, if it is
|
||||||
|
* an instance variable of another object), it is recommended to clear the
|
||||||
|
* pointer to %NULL rather than retain a dangling pointer to a potentially
|
||||||
|
* invalid #GObject instance. Use g_clear_object() for this.
|
||||||
|
*/
|
||||||
|
unref(): void;
|
||||||
|
/**
|
||||||
|
* This function essentially limits the life time of the `closure` to
|
||||||
|
* the life time of the object. That is, when the object is finalized,
|
||||||
|
* the `closure` is invalidated by calling g_closure_invalidate() on
|
||||||
|
* it, in order to prevent invocations of the closure with a finalized
|
||||||
|
* (nonexisting) object. Also, g_object_ref() and g_object_unref() are
|
||||||
|
* added as marshal guards to the `closure,` to ensure that an extra
|
||||||
|
* reference count is held on `object` during invocation of the
|
||||||
|
* `closure`. Usually, this function will be called on closures that
|
||||||
|
* use this `object` as closure data.
|
||||||
|
* @param closure #GClosure to watch
|
||||||
|
*/
|
||||||
|
watch_closure(closure: GObject.Closure): void;
|
||||||
|
/**
|
||||||
|
* the `constructed` function is called by g_object_new() as the
|
||||||
|
* final step of the object creation process. At the point of the call, all
|
||||||
|
* construction properties have been set on the object. The purpose of this
|
||||||
|
* call is to allow for object initialisation steps that can only be performed
|
||||||
|
* after construction properties have been set. `constructed` implementors
|
||||||
|
* should chain up to the `constructed` call of their parent class to allow it
|
||||||
|
* to complete its initialisation.
|
||||||
|
*/
|
||||||
|
vfunc_constructed(): void;
|
||||||
|
/**
|
||||||
|
* emits property change notification for a bunch
|
||||||
|
* of properties. Overriding `dispatch_properties_changed` should be rarely
|
||||||
|
* needed.
|
||||||
|
* @param n_pspecs
|
||||||
|
* @param pspecs
|
||||||
|
*/
|
||||||
|
vfunc_dispatch_properties_changed(n_pspecs: number, pspecs: GObject.ParamSpec): void;
|
||||||
|
/**
|
||||||
|
* the `dispose` function is supposed to drop all references to other
|
||||||
|
* objects, but keep the instance otherwise intact, so that client method
|
||||||
|
* invocations still work. It may be run multiple times (due to reference
|
||||||
|
* loops). Before returning, `dispose` should chain up to the `dispose` method
|
||||||
|
* of the parent class.
|
||||||
|
*/
|
||||||
|
vfunc_dispose(): void;
|
||||||
|
/**
|
||||||
|
* instance finalization function, should finish the finalization of
|
||||||
|
* the instance begun in `dispose` and chain up to the `finalize` method of the
|
||||||
|
* parent class.
|
||||||
|
*/
|
||||||
|
vfunc_finalize(): void;
|
||||||
|
/**
|
||||||
|
* the generic getter for all properties of this type. Should be
|
||||||
|
* overridden for every type with properties.
|
||||||
|
* @param property_id
|
||||||
|
* @param value
|
||||||
|
* @param pspec
|
||||||
|
*/
|
||||||
|
vfunc_get_property(property_id: number, value: GObject.Value | any, pspec: GObject.ParamSpec): void;
|
||||||
|
/**
|
||||||
|
* Emits a "notify" signal for the property `property_name` on `object`.
|
||||||
|
*
|
||||||
|
* When possible, eg. when signaling a property change from within the class
|
||||||
|
* that registered the property, you should use g_object_notify_by_pspec()
|
||||||
|
* instead.
|
||||||
|
*
|
||||||
|
* Note that emission of the notify signal may be blocked with
|
||||||
|
* g_object_freeze_notify(). In this case, the signal emissions are queued
|
||||||
|
* and will be emitted (in reverse order) when g_object_thaw_notify() is
|
||||||
|
* called.
|
||||||
|
* @param pspec
|
||||||
|
*/
|
||||||
|
vfunc_notify(pspec: GObject.ParamSpec): void;
|
||||||
|
/**
|
||||||
|
* the generic setter for all properties of this type. Should be
|
||||||
|
* overridden for every type with properties. If implementations of
|
||||||
|
* `set_property` don't emit property change notification explicitly, this will
|
||||||
|
* be done implicitly by the type system. However, if the notify signal is
|
||||||
|
* emitted explicitly, the type system will not emit it a second time.
|
||||||
|
* @param property_id
|
||||||
|
* @param value
|
||||||
|
* @param pspec
|
||||||
|
*/
|
||||||
|
vfunc_set_property(property_id: number, value: GObject.Value | any, pspec: GObject.ParamSpec): void;
|
||||||
|
/**
|
||||||
|
* Disconnects a handler from an instance so it will not be called during any future or currently ongoing emissions of the signal it has been connected to.
|
||||||
|
* @param id Handler ID of the handler to be disconnected
|
||||||
|
*/
|
||||||
|
disconnect(id: number): void;
|
||||||
|
/**
|
||||||
|
* Sets multiple properties of an object at once. The properties argument should be a dictionary mapping property names to values.
|
||||||
|
* @param properties Object containing the properties to set
|
||||||
|
*/
|
||||||
|
set(properties: { [key: string]: any }): void;
|
||||||
|
/**
|
||||||
|
* Blocks a handler of an instance so it will not be called during any signal emissions
|
||||||
|
* @param id Handler ID of the handler to be blocked
|
||||||
|
*/
|
||||||
|
block_signal_handler(id: number): void;
|
||||||
|
/**
|
||||||
|
* Unblocks a handler so it will be called again during any signal emissions
|
||||||
|
* @param id Handler ID of the handler to be unblocked
|
||||||
|
*/
|
||||||
|
unblock_signal_handler(id: number): void;
|
||||||
|
/**
|
||||||
|
* Stops a signal's emission by the given signal name. This will prevent the default handler and any subsequent signal handlers from being invoked.
|
||||||
|
* @param detailedName Name of the signal to stop emission of
|
||||||
|
*/
|
||||||
|
stop_emission_by_name(detailedName: string): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 PangoFT2;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://PangoFT2' {
|
||||||
|
import PangoFT210 from 'gi://PangoFT2?version=1.0';
|
||||||
|
export default PangoFT210;
|
||||||
|
}
|
||||||
|
// END
|
560
@girs/pangoot-1.0.d.ts
vendored
Normal file
560
@girs/pangoot-1.0.d.ts
vendored
Normal file
|
@ -0,0 +1,560 @@
|
||||||
|
/// <reference path="./freetype2-2.0.d.ts" />
|
||||||
|
/// <reference path="./pangofc-1.0.d.ts" />
|
||||||
|
/// <reference path="./fontconfig-2.0.d.ts" />
|
||||||
|
/// <reference path="./pango-1.0.d.ts" />
|
||||||
|
/// <reference path="./cairo-1.0.d.ts" />
|
||||||
|
/// <reference path="./cairo.d.ts" />
|
||||||
|
/// <reference path="./gobject-2.0.d.ts" />
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./harfbuzz-0.0.d.ts" />
|
||||||
|
/// <reference path="./gio-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://PangoOT?version=1.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type freetype2 from 'gi://freetype2?version=2.0';
|
||||||
|
import type PangoFc from 'gi://PangoFc?version=1.0';
|
||||||
|
import type fontconfig from 'gi://fontconfig?version=2.0';
|
||||||
|
import type Pango from 'gi://Pango?version=1.0';
|
||||||
|
import type cairo from 'cairo';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type HarfBuzz from 'gi://HarfBuzz?version=0.0';
|
||||||
|
import type Gio from 'gi://Gio?version=2.0';
|
||||||
|
import type GModule from 'gi://GModule?version=2.0';
|
||||||
|
|
||||||
|
export namespace PangoOT {
|
||||||
|
/**
|
||||||
|
* PangoOT-1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The PangoOTTableType enumeration values are used to
|
||||||
|
* identify the various OpenType tables in the
|
||||||
|
* pango_ot_info_… functions.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The PangoOTTableType enumeration values are used to
|
||||||
|
* identify the various OpenType tables in the
|
||||||
|
* pango_ot_info_… functions.
|
||||||
|
*/
|
||||||
|
export namespace TableType {
|
||||||
|
export const $gtype: GObject.GType<TableType>;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum TableType {
|
||||||
|
/**
|
||||||
|
* The GSUB table.
|
||||||
|
*/
|
||||||
|
GSUB,
|
||||||
|
/**
|
||||||
|
* The GPOS table.
|
||||||
|
*/
|
||||||
|
GPOS,
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* This is used as the property bit in pango_ot_ruleset_add_feature() when a
|
||||||
|
* feature should be applied to all glyphs.
|
||||||
|
*/
|
||||||
|
const ALL_GLYPHS: number;
|
||||||
|
/**
|
||||||
|
* This is used as the language index in pango_ot_info_find_feature() when
|
||||||
|
* the default language system of the script is desired.
|
||||||
|
*
|
||||||
|
* It is also returned by pango_ot_info_find_language() if the requested language
|
||||||
|
* is not found, or the requested language tag was PANGO_OT_TAG_DEFAULT_LANGUAGE.
|
||||||
|
* The end result is that one can always call pango_ot_tag_from_language()
|
||||||
|
* followed by pango_ot_info_find_language() and pass the result to
|
||||||
|
* pango_ot_info_find_feature() without having to worry about falling back to
|
||||||
|
* default language system explicitly.
|
||||||
|
*/
|
||||||
|
const DEFAULT_LANGUAGE: number;
|
||||||
|
/**
|
||||||
|
* This is used as a feature index that represent no feature, that is, should be
|
||||||
|
* skipped. It may be returned as feature index by pango_ot_info_find_feature()
|
||||||
|
* if the feature is not found, and pango_ot_ruleset_add_feature() function
|
||||||
|
* automatically skips this value, so no special handling is required by the user.
|
||||||
|
*/
|
||||||
|
const NO_FEATURE: number;
|
||||||
|
/**
|
||||||
|
* This is used as a script index that represent no script, that is, when the
|
||||||
|
* requested script was not found, and a default ('DFLT') script was not found
|
||||||
|
* either. It may be returned as script index by pango_ot_info_find_script()
|
||||||
|
* if the script or a default script are not found, all other functions
|
||||||
|
* taking a script index essentially return if the input script index is
|
||||||
|
* this value, so no special handling is required by the user.
|
||||||
|
*/
|
||||||
|
const NO_SCRIPT: number;
|
||||||
|
/**
|
||||||
|
* Finds the OpenType language-system tag best describing `language`.
|
||||||
|
* @param language A `PangoLanguage`
|
||||||
|
* @returns `PangoOTTag` best matching @language or %PANGO_OT_TAG_DEFAULT_LANGUAGE if none found or if @language is %NULL.
|
||||||
|
*/
|
||||||
|
function tag_from_language(language?: Pango.Language | null): Tag;
|
||||||
|
/**
|
||||||
|
* Finds the OpenType script tag corresponding to `script`.
|
||||||
|
*
|
||||||
|
* The %PANGO_SCRIPT_COMMON, %PANGO_SCRIPT_INHERITED, and
|
||||||
|
* %PANGO_SCRIPT_UNKNOWN scripts are mapped to the OpenType
|
||||||
|
* 'DFLT' script tag that is also defined as
|
||||||
|
* %PANGO_OT_TAG_DEFAULT_SCRIPT.
|
||||||
|
*
|
||||||
|
* Note that multiple `PangoScript` values may map to the same
|
||||||
|
* OpenType script tag. In particular, %PANGO_SCRIPT_HIRAGANA
|
||||||
|
* and %PANGO_SCRIPT_KATAKANA both map to the OT tag 'kana'.
|
||||||
|
* @param script A `PangoScript`
|
||||||
|
* @returns `PangoOTTag` corresponding to @script or %PANGO_OT_TAG_DEFAULT_SCRIPT if none found.
|
||||||
|
*/
|
||||||
|
function tag_from_script(script: Pango.Script | null): Tag;
|
||||||
|
/**
|
||||||
|
* Finds a `PangoLanguage` corresponding to `language_tag`.
|
||||||
|
* @param language_tag A `PangoOTTag` OpenType language-system tag
|
||||||
|
* @returns `PangoLanguage` best matching @language_tag or `PangoLanguage` corresponding to the string "xx" if none found.
|
||||||
|
*/
|
||||||
|
function tag_to_language(language_tag: Tag): Pango.Language;
|
||||||
|
/**
|
||||||
|
* Finds the `PangoScript` corresponding to `script_tag`.
|
||||||
|
*
|
||||||
|
* The 'DFLT' script tag is mapped to %PANGO_SCRIPT_COMMON.
|
||||||
|
*
|
||||||
|
* Note that an OpenType script tag may correspond to multiple
|
||||||
|
* `PangoScript` values. In such cases, the `PangoScript` value
|
||||||
|
* with the smallest value is returned.
|
||||||
|
* In particular, %PANGO_SCRIPT_HIRAGANA
|
||||||
|
* and %PANGO_SCRIPT_KATAKANA both map to the OT tag 'kana'.
|
||||||
|
* This function will return %PANGO_SCRIPT_HIRAGANA for
|
||||||
|
* 'kana'.
|
||||||
|
* @param script_tag A `PangoOTTag` OpenType script tag
|
||||||
|
* @returns `PangoScript` corresponding to @script_tag or %PANGO_SCRIPT_UNKNOWN if none found.
|
||||||
|
*/
|
||||||
|
function tag_to_script(script_tag: Tag): Pango.Script;
|
||||||
|
namespace Info {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Info extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Info>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Info.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the `PangoOTInfo` structure for the given FreeType font face.
|
||||||
|
* @param face a `FT_Face`
|
||||||
|
*/
|
||||||
|
static get(face: freetype2.Face): Info;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Finds the index of a feature.
|
||||||
|
*
|
||||||
|
* If the feature is not found, sets `feature_index` to PANGO_OT_NO_FEATURE,
|
||||||
|
* which is safe to pass to [method`PangoOT`.Ruleset.add_feature] and similar
|
||||||
|
* functions.
|
||||||
|
*
|
||||||
|
* In the future, this may set `feature_index` to an special value that if
|
||||||
|
* used in [method`PangoOT`.Ruleset.add_feature] will ask Pango to synthesize
|
||||||
|
* the requested feature based on Unicode properties and data. However, this
|
||||||
|
* function will still return %FALSE in those cases. So, users may want to
|
||||||
|
* ignore the return value of this function in certain cases.
|
||||||
|
* @param table_type the table type to obtain information about
|
||||||
|
* @param feature_tag the tag of the feature to find
|
||||||
|
* @param script_index the index of the script
|
||||||
|
* @param language_index the index of the language whose features are searched, or %PANGO_OT_DEFAULT_LANGUAGE to use the default language of the script
|
||||||
|
* @returns %TRUE if the feature was found
|
||||||
|
*/
|
||||||
|
find_feature(
|
||||||
|
table_type: TableType | null,
|
||||||
|
feature_tag: Tag,
|
||||||
|
script_index: number,
|
||||||
|
language_index: number,
|
||||||
|
): [boolean, number];
|
||||||
|
/**
|
||||||
|
* Finds the index of a language and its required feature index.
|
||||||
|
*
|
||||||
|
* If the language is not found, sets `language_index` to %PANGO_OT_DEFAULT_LANGUAGE
|
||||||
|
* and the required feature of the default language system is returned in
|
||||||
|
* required_feature_index. For best compatibility with some fonts, also
|
||||||
|
* searches the language system tag 'dflt' before falling back to the default
|
||||||
|
* language system, but that is transparent to the user. The user can simply
|
||||||
|
* ignore the return value of this function to automatically fall back to the
|
||||||
|
* default language system.
|
||||||
|
* @param table_type the table type to obtain information about
|
||||||
|
* @param script_index the index of the script whose languages are searched
|
||||||
|
* @param language_tag the tag of the language to find
|
||||||
|
* @returns %TRUE if the language was found
|
||||||
|
*/
|
||||||
|
find_language(
|
||||||
|
table_type: TableType | null,
|
||||||
|
script_index: number,
|
||||||
|
language_tag: Tag,
|
||||||
|
): [boolean, number, number];
|
||||||
|
/**
|
||||||
|
* Finds the index of a script.
|
||||||
|
*
|
||||||
|
* If not found, tries to find the 'DFLT' and then 'dflt' scripts and
|
||||||
|
* return the index of that in `script_index`. If none of those is found
|
||||||
|
* either, %PANGO_OT_NO_SCRIPT is placed in `script_index`.
|
||||||
|
*
|
||||||
|
* All other functions taking an input script_index parameter know
|
||||||
|
* how to handle %PANGO_OT_NO_SCRIPT, so one can ignore the return
|
||||||
|
* value of this function completely and proceed, to enjoy the automatic
|
||||||
|
* fallback to the 'DFLT'/'dflt' script.
|
||||||
|
* @param table_type the table type to obtain information about
|
||||||
|
* @param script_tag the tag of the script to find
|
||||||
|
* @returns %TRUE if the script was found
|
||||||
|
*/
|
||||||
|
find_script(table_type: TableType | null, script_tag: Tag): [boolean, number];
|
||||||
|
/**
|
||||||
|
* Obtains the list of features for the given language of the given script.
|
||||||
|
* @param table_type the table type to obtain information about
|
||||||
|
* @param tag unused parameter
|
||||||
|
* @param script_index the index of the script to obtain information about
|
||||||
|
* @param language_index the index of the language to list features for, or %PANGO_OT_DEFAULT_LANGUAGE, to list features for the default language of the script
|
||||||
|
* @returns a newly-allocated zero-terminated array containing the tags of the available features
|
||||||
|
*/
|
||||||
|
list_features(table_type: TableType | null, tag: Tag, script_index: number, language_index: number): Tag;
|
||||||
|
/**
|
||||||
|
* Obtains the list of available languages for a given script.
|
||||||
|
* @param table_type the table type to obtain information about
|
||||||
|
* @param script_index the index of the script to list languages for
|
||||||
|
* @param language_tag unused parameter
|
||||||
|
* @returns a newly-allocated zero-terminated array containing the tags of the available languages
|
||||||
|
*/
|
||||||
|
list_languages(table_type: TableType | null, script_index: number, language_tag: Tag): Tag;
|
||||||
|
/**
|
||||||
|
* Obtains the list of available scripts.
|
||||||
|
* @param table_type the table type to obtain information about
|
||||||
|
* @returns a newly-allocated zero-terminated array containing the tags of the available scripts
|
||||||
|
*/
|
||||||
|
list_scripts(table_type: TableType | null): Tag;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Ruleset {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends GObject.Object.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The `PangoOTRuleset` structure holds a set of features selected
|
||||||
|
* from the tables in an OpenType font.
|
||||||
|
*
|
||||||
|
* A feature is an operation such as adjusting glyph positioning
|
||||||
|
* that should be applied to a text feature such as a certain
|
||||||
|
* type of accent.
|
||||||
|
*
|
||||||
|
* A `PangoOTRuleset` is created with [ctor`PangoOT`.Ruleset.new],
|
||||||
|
* features are added to it with [method`PangoOT`.Ruleset.add_feature],
|
||||||
|
* then it is applied to a `PangoGlyphString` with
|
||||||
|
* [method`PangoOT`.Ruleset.position].
|
||||||
|
*/
|
||||||
|
class Ruleset extends GObject.Object {
|
||||||
|
static $gtype: GObject.GType<Ruleset>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Ruleset.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](info: Info): Ruleset;
|
||||||
|
|
||||||
|
static new_for(info: Info, script: Pango.Script, language: Pango.Language): Ruleset;
|
||||||
|
|
||||||
|
static new_from_description(info: Info, desc: RulesetDescription): Ruleset;
|
||||||
|
|
||||||
|
// Static methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns a ruleset for the given OpenType info and ruleset
|
||||||
|
* description.
|
||||||
|
*
|
||||||
|
* Rulesets are created on demand using
|
||||||
|
* [ctor`PangoOT`.Ruleset.new_from_description].
|
||||||
|
* The returned ruleset should not be modified or destroyed.
|
||||||
|
*
|
||||||
|
* The static feature map members of `desc` should be alive as
|
||||||
|
* long as `info` is.
|
||||||
|
* @param info a `PangoOTInfo`
|
||||||
|
* @param desc a `PangoOTRulesetDescription`
|
||||||
|
*/
|
||||||
|
static get_for_description(info: Info, desc: RulesetDescription): Ruleset;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds a feature to the ruleset.
|
||||||
|
* @param table_type the table type to add a feature to
|
||||||
|
* @param feature_index the index of the feature to add
|
||||||
|
* @param property_bit the property bit to use for this feature. Used to identify the glyphs that this feature should be applied to, or %PANGO_OT_ALL_GLYPHS if it should be applied to all glyphs.
|
||||||
|
*/
|
||||||
|
add_feature(table_type: TableType | null, feature_index: number, property_bit: number): void;
|
||||||
|
/**
|
||||||
|
* Gets the number of GSUB and GPOS features in the ruleset.
|
||||||
|
* @returns Total number of features in the @ruleset
|
||||||
|
*/
|
||||||
|
get_feature_count(): [number, number, number];
|
||||||
|
/**
|
||||||
|
* This is a convenience function that first tries to find the feature
|
||||||
|
* using [method`PangoOT`.Info.find_feature] and the ruleset script and
|
||||||
|
* language passed to [ctor`PangoOT`.Ruleset.new_for] and if the feature
|
||||||
|
* is found, adds it to the ruleset.
|
||||||
|
*
|
||||||
|
* If `ruleset` was not created using [ctor`PangoOT`.Ruleset.new_for],
|
||||||
|
* this function does nothing.
|
||||||
|
* @param table_type the table type to add a feature to
|
||||||
|
* @param feature_tag the tag of the feature to add
|
||||||
|
* @param property_bit the property bit to use for this feature. Used to identify the glyphs that this feature should be applied to, or %PANGO_OT_ALL_GLYPHS if it should be applied to all glyphs.
|
||||||
|
* @returns %TRUE if the feature was found and added to ruleset, %FALSE otherwise
|
||||||
|
*/
|
||||||
|
maybe_add_feature(table_type: TableType | null, feature_tag: Tag, property_bit: number): boolean;
|
||||||
|
/**
|
||||||
|
* This is a convenience function that for each feature in the feature map
|
||||||
|
* array `features` converts the feature name to a `PangoOTTag` feature tag
|
||||||
|
* using PANGO_OT_TAG_MAKE() and calls [method`PangoOT`.Ruleset.maybe_add_feature]
|
||||||
|
* on it.
|
||||||
|
* @param table_type the table type to add features to
|
||||||
|
* @param features array of feature name and property bits to add
|
||||||
|
* @param n_features number of feature records in @features array
|
||||||
|
* @returns The number of features in @features that were found and added to @ruleset
|
||||||
|
*/
|
||||||
|
maybe_add_features(table_type: TableType | null, features: FeatureMap, n_features: number): number;
|
||||||
|
/**
|
||||||
|
* Performs the OpenType GPOS positioning on `buffer` using
|
||||||
|
* the features in `ruleset`.
|
||||||
|
* @param buffer a `PangoOTBuffer`
|
||||||
|
*/
|
||||||
|
position(buffer: Buffer): void;
|
||||||
|
/**
|
||||||
|
* Performs the OpenType GSUB substitution on `buffer` using
|
||||||
|
* the features in `ruleset`.
|
||||||
|
* @param buffer a `PangoOTBuffer`
|
||||||
|
*/
|
||||||
|
substitute(buffer: Buffer): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Buffer {
|
||||||
|
static $gtype: GObject.GType<Buffer>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(font: PangoFc.Font);
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](font: PangoFc.Font): Buffer;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Appends a glyph to a `PangoOTBuffer`, with `properties` identifying which
|
||||||
|
* features should be applied on this glyph.
|
||||||
|
*
|
||||||
|
* See [method`PangoOT`.Ruleset.add_feature].
|
||||||
|
* @param glyph the glyph index to add, like a `PangoGlyph`
|
||||||
|
* @param properties the glyph properties
|
||||||
|
* @param cluster the cluster that this glyph belongs to
|
||||||
|
*/
|
||||||
|
add_glyph(glyph: number, properties: number, cluster: number): void;
|
||||||
|
/**
|
||||||
|
* Empties a `PangoOTBuffer`, make it ready to add glyphs to.
|
||||||
|
*/
|
||||||
|
clear(): void;
|
||||||
|
/**
|
||||||
|
* Destroys a `PangoOTBuffer` and free all associated memory.
|
||||||
|
*/
|
||||||
|
destroy(): void;
|
||||||
|
/**
|
||||||
|
* Gets the glyph array contained in a `PangoOTBuffer`.
|
||||||
|
*
|
||||||
|
* The glyphs are owned by the buffer and should not be freed,
|
||||||
|
* and are only valid as long as buffer is not modified.
|
||||||
|
*/
|
||||||
|
get_glyphs(): Glyph[] | null;
|
||||||
|
/**
|
||||||
|
* Exports the glyphs in a `PangoOTBuffer` into a `PangoGlyphString`.
|
||||||
|
*
|
||||||
|
* This is typically used after the OpenType layout processing
|
||||||
|
* is over, to convert the resulting glyphs into a generic Pango
|
||||||
|
* glyph string.
|
||||||
|
* @param glyphs a `PangoGlyphString`
|
||||||
|
*/
|
||||||
|
output(glyphs: Pango.GlyphString): void;
|
||||||
|
/**
|
||||||
|
* Sets whether glyphs will be rendered right-to-left.
|
||||||
|
*
|
||||||
|
* This setting is needed for proper horizontal positioning
|
||||||
|
* of right-to-left scripts.
|
||||||
|
* @param rtl %TRUE for right-to-left text
|
||||||
|
*/
|
||||||
|
set_rtl(rtl: boolean): void;
|
||||||
|
/**
|
||||||
|
* Sets whether characters with a mark class should be forced to zero width.
|
||||||
|
*
|
||||||
|
* This setting is needed for proper positioning of Arabic accents,
|
||||||
|
* but will produce incorrect results with standard OpenType Indic
|
||||||
|
* fonts.
|
||||||
|
* @param zero_width_marks %TRUE if characters with a mark class should be forced to zero width
|
||||||
|
*/
|
||||||
|
set_zero_width_marks(zero_width_marks: boolean): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The `PangoOTFeatureMap` typedef is used to represent an OpenType
|
||||||
|
* feature with the property bit associated with it. The feature tag is
|
||||||
|
* represented as a char array instead of a `PangoOTTag` for convenience.
|
||||||
|
*/
|
||||||
|
class FeatureMap {
|
||||||
|
static $gtype: GObject.GType<FeatureMap>;
|
||||||
|
|
||||||
|
// Fields
|
||||||
|
|
||||||
|
feature_name: number[];
|
||||||
|
property_bit: number;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
properties?: Partial<{
|
||||||
|
feature_name: number[];
|
||||||
|
property_bit: number;
|
||||||
|
}>,
|
||||||
|
);
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The `PangoOTGlyph` structure represents a single glyph together with
|
||||||
|
* information used for OpenType layout processing of the glyph.
|
||||||
|
* It contains the following fields.
|
||||||
|
*/
|
||||||
|
class Glyph {
|
||||||
|
static $gtype: GObject.GType<Glyph>;
|
||||||
|
|
||||||
|
// Fields
|
||||||
|
|
||||||
|
glyph: number;
|
||||||
|
properties: number;
|
||||||
|
cluster: number;
|
||||||
|
component: number;
|
||||||
|
ligID: number;
|
||||||
|
internal: number;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
properties?: Partial<{
|
||||||
|
glyph: number;
|
||||||
|
properties: number;
|
||||||
|
cluster: number;
|
||||||
|
component: number;
|
||||||
|
ligID: number;
|
||||||
|
internal: number;
|
||||||
|
}>,
|
||||||
|
);
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The `PangoOTRuleset` structure holds all the information needed
|
||||||
|
* to build a complete `PangoOTRuleset` from an OpenType font.
|
||||||
|
* The main use of this struct is to act as the key for a per-font
|
||||||
|
* hash of rulesets. The user populates a ruleset description and
|
||||||
|
* gets the ruleset using pango_ot_ruleset_get_for_description()
|
||||||
|
* or create a new one using pango_ot_ruleset_new_from_description().
|
||||||
|
*/
|
||||||
|
class RulesetDescription {
|
||||||
|
static $gtype: GObject.GType<RulesetDescription>;
|
||||||
|
|
||||||
|
// Fields
|
||||||
|
|
||||||
|
script: Pango.Script;
|
||||||
|
static_gsub_features: FeatureMap;
|
||||||
|
n_static_gsub_features: number;
|
||||||
|
static_gpos_features: FeatureMap;
|
||||||
|
n_static_gpos_features: number;
|
||||||
|
other_features: FeatureMap;
|
||||||
|
n_other_features: number;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a copy of `desc,` which should be freed with
|
||||||
|
* [method`PangoOT`.RulesetDescription.free].
|
||||||
|
*
|
||||||
|
* Primarily used internally by [func`PangoOT`.Ruleset.get_for_description]
|
||||||
|
* to cache rulesets for ruleset descriptions.
|
||||||
|
* @returns the newly allocated `PangoOTRulesetDescription`
|
||||||
|
*/
|
||||||
|
copy(): RulesetDescription;
|
||||||
|
/**
|
||||||
|
* Compares two ruleset descriptions for equality.
|
||||||
|
*
|
||||||
|
* Two ruleset descriptions are considered equal if the rulesets
|
||||||
|
* they describe are provably identical. This means that their
|
||||||
|
* script, language, and all feature sets should be equal.
|
||||||
|
*
|
||||||
|
* For static feature sets, the array addresses are compared directly,
|
||||||
|
* while for other features, the list of features is compared one by
|
||||||
|
* one.(Two ruleset descriptions may result in identical rulesets
|
||||||
|
* being created, but still compare %FALSE.)
|
||||||
|
* @param desc2 a ruleset description
|
||||||
|
* @returns %TRUE if two ruleset descriptions are identical, %FALSE otherwise
|
||||||
|
*/
|
||||||
|
equal(desc2: RulesetDescription): boolean;
|
||||||
|
/**
|
||||||
|
* Frees a ruleset description allocated by
|
||||||
|
* pango_ot_ruleset_description_copy().
|
||||||
|
*/
|
||||||
|
free(): void;
|
||||||
|
/**
|
||||||
|
* Computes a hash of a `PangoOTRulesetDescription` structure suitable
|
||||||
|
* to be used, for example, as an argument to g_hash_table_new().
|
||||||
|
* @returns the hash value
|
||||||
|
*/
|
||||||
|
hash(): number;
|
||||||
|
}
|
||||||
|
|
||||||
|
type Tag = number;
|
||||||
|
/**
|
||||||
|
* 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 PangoOT;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://PangoOT' {
|
||||||
|
import PangoOT10 from 'gi://PangoOT?version=1.0';
|
||||||
|
export default PangoOT10;
|
||||||
|
}
|
||||||
|
// END
|
879
@girs/pangoxft-1.0.d.ts
vendored
Normal file
879
@girs/pangoxft-1.0.d.ts
vendored
Normal file
|
@ -0,0 +1,879 @@
|
||||||
|
/// <reference path="./xlib-2.0.d.ts" />
|
||||||
|
/// <reference path="./xft-2.0.d.ts" />
|
||||||
|
/// <reference path="./pangoot-1.0.d.ts" />
|
||||||
|
/// <reference path="./freetype2-2.0.d.ts" />
|
||||||
|
/// <reference path="./pangofc-1.0.d.ts" />
|
||||||
|
/// <reference path="./fontconfig-2.0.d.ts" />
|
||||||
|
/// <reference path="./pango-1.0.d.ts" />
|
||||||
|
/// <reference path="./cairo-1.0.d.ts" />
|
||||||
|
/// <reference path="./cairo.d.ts" />
|
||||||
|
/// <reference path="./gobject-2.0.d.ts" />
|
||||||
|
/// <reference path="./glib-2.0.d.ts" />
|
||||||
|
/// <reference path="./harfbuzz-0.0.d.ts" />
|
||||||
|
/// <reference path="./gio-2.0.d.ts" />
|
||||||
|
/// <reference path="./gmodule-2.0.d.ts" />
|
||||||
|
/// <reference path="./pangoft2-1.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://PangoXft?version=1.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type xlib from 'gi://xlib?version=2.0';
|
||||||
|
import type xft from 'gi://xft?version=2.0';
|
||||||
|
import type PangoOT from 'gi://PangoOT?version=1.0';
|
||||||
|
import type freetype2 from 'gi://freetype2?version=2.0';
|
||||||
|
import type PangoFc from 'gi://PangoFc?version=1.0';
|
||||||
|
import type fontconfig from 'gi://fontconfig?version=2.0';
|
||||||
|
import type Pango from 'gi://Pango?version=1.0';
|
||||||
|
import type cairo from 'cairo';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
import type GLib from 'gi://GLib?version=2.0';
|
||||||
|
import type HarfBuzz from 'gi://HarfBuzz?version=0.0';
|
||||||
|
import type Gio from 'gi://Gio?version=2.0';
|
||||||
|
import type GModule from 'gi://GModule?version=2.0';
|
||||||
|
import type PangoFT2 from 'gi://PangoFT2?version=1.0';
|
||||||
|
|
||||||
|
export namespace PangoXft {
|
||||||
|
/**
|
||||||
|
* PangoXft-1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the `PangoXftFontMap` for the given display and screen.
|
||||||
|
* The fontmap is owned by Pango and will be valid until
|
||||||
|
* the display is closed.
|
||||||
|
* @param display an X display
|
||||||
|
* @param screen the screen number of a screen within @display
|
||||||
|
* @returns a `PangoFontMap` object, owned by Pango.
|
||||||
|
*/
|
||||||
|
function get_font_map(display: xlib.Display, screen: number): Pango.FontMap;
|
||||||
|
/**
|
||||||
|
* Renders a `PangoGlyphString` onto an Xrender Picture object.
|
||||||
|
* @param display an X display
|
||||||
|
* @param src_picture the source picture to draw the string with
|
||||||
|
* @param dest_picture the destination picture to draw the string onto
|
||||||
|
* @param font the font in which to draw the string
|
||||||
|
* @param glyphs the glyph string to draw
|
||||||
|
* @param x the x position of start of string (in pixels)
|
||||||
|
* @param y the y position of baseline (in pixels)
|
||||||
|
*/
|
||||||
|
function picture_render(
|
||||||
|
display: xlib.Display,
|
||||||
|
src_picture: xlib.Picture,
|
||||||
|
dest_picture: xlib.Picture,
|
||||||
|
font: Pango.Font,
|
||||||
|
glyphs: Pango.GlyphString,
|
||||||
|
x: number,
|
||||||
|
y: number,
|
||||||
|
): void;
|
||||||
|
/**
|
||||||
|
* Renders a `PangoGlyphString` onto an XftDraw object wrapping an X drawable.
|
||||||
|
* @param draw the XftDraw object.
|
||||||
|
* @param color the color in which to draw the string
|
||||||
|
* @param font the font in which to draw the string
|
||||||
|
* @param glyphs the glyph string to draw
|
||||||
|
* @param x the x position of start of string (in pixels)
|
||||||
|
* @param y the y position of baseline (in pixels)
|
||||||
|
*/
|
||||||
|
function render(
|
||||||
|
draw: xft.Draw,
|
||||||
|
color: xft.Color,
|
||||||
|
font: Pango.Font,
|
||||||
|
glyphs: Pango.GlyphString,
|
||||||
|
x: number,
|
||||||
|
y: number,
|
||||||
|
): void;
|
||||||
|
/**
|
||||||
|
* Render a `PangoLayout` onto a XftDraw
|
||||||
|
* @param draw an XftDraw
|
||||||
|
* @param color the foreground color in which to draw the layout (may be overridden by color attributes)
|
||||||
|
* @param layout a `PangoLayout`
|
||||||
|
* @param x the X position of the left of the layout (in Pango units)
|
||||||
|
* @param y the Y position of the top of the layout (in Pango units)
|
||||||
|
*/
|
||||||
|
function render_layout(draw: xft.Draw, color: xft.Color, layout: Pango.Layout, x: number, y: number): void;
|
||||||
|
/**
|
||||||
|
* Render a `PangoLayoutLine` onto a XftDraw
|
||||||
|
* @param draw an XftDraw
|
||||||
|
* @param color the foreground color in which to draw the layout line (may be overridden by color attributes)
|
||||||
|
* @param line a `PangoLayoutLine`
|
||||||
|
* @param x the x position of start of string (in Pango units)
|
||||||
|
* @param y the y position of baseline (in Pango units)
|
||||||
|
*/
|
||||||
|
function render_layout_line(
|
||||||
|
draw: xft.Draw,
|
||||||
|
color: xft.Color,
|
||||||
|
line: Pango.LayoutLine,
|
||||||
|
x: number,
|
||||||
|
y: number,
|
||||||
|
): void;
|
||||||
|
/**
|
||||||
|
* Renders a `PangoGlyphString` onto a XftDraw, possibly
|
||||||
|
* transforming the layed-out coordinates through a transformation
|
||||||
|
* matrix.
|
||||||
|
*
|
||||||
|
* Note that the transformation matrix for `font` is not
|
||||||
|
* changed, so to produce correct rendering results, the `font`
|
||||||
|
* must have been loaded using a `PangoContext` with an identical
|
||||||
|
* transformation matrix to that passed in to this function.
|
||||||
|
* @param draw an XftDraw
|
||||||
|
* @param color the color in which to draw the glyphs
|
||||||
|
* @param matrix a `PangoMatrix`
|
||||||
|
* @param font the font in which to draw the string
|
||||||
|
* @param glyphs the glyph string to draw
|
||||||
|
* @param x the x position of the start of the string (in Pango units in user space coordinates)
|
||||||
|
* @param y the y position of the baseline (in Pango units in user space coordinates)
|
||||||
|
*/
|
||||||
|
function render_transformed(
|
||||||
|
draw: xft.Draw,
|
||||||
|
color: xft.Color,
|
||||||
|
matrix: Pango.Matrix | null,
|
||||||
|
font: Pango.Font,
|
||||||
|
glyphs: Pango.GlyphString,
|
||||||
|
x: number,
|
||||||
|
y: number,
|
||||||
|
): void;
|
||||||
|
/**
|
||||||
|
* Sets a function that will be called to do final configuration
|
||||||
|
* substitution on a #FcPattern before it is used to load
|
||||||
|
* the font. This function can be used to do things like set
|
||||||
|
* hinting and antialiasing options.
|
||||||
|
* @param display an X Display
|
||||||
|
* @param screen the screen number of a screen within @display
|
||||||
|
* @param func function to call to to do final config tweaking on #FcPattern objects.
|
||||||
|
*/
|
||||||
|
function set_default_substitute(display: xlib.Display, screen: number, func: SubstituteFunc): void;
|
||||||
|
/**
|
||||||
|
* Release any resources that have been cached for the
|
||||||
|
* combination of `display` and `screen`. Note that when the
|
||||||
|
* X display is closed, resources are released automatically,
|
||||||
|
* without needing to call this function.
|
||||||
|
* @param display an X display
|
||||||
|
* @param screen the screen number of a screen within @display
|
||||||
|
*/
|
||||||
|
function shutdown_display(display: xlib.Display, screen: number): void;
|
||||||
|
/**
|
||||||
|
* Call this function any time the results of the
|
||||||
|
* default substitution function set with
|
||||||
|
* pango_xft_set_default_substitute() change.
|
||||||
|
* That is, if your substitution function will return different
|
||||||
|
* results for the same input pattern, you must call this function.
|
||||||
|
* @param display an X Display
|
||||||
|
* @param screen the screen number of a screen within @display
|
||||||
|
*/
|
||||||
|
function substitute_changed(display: xlib.Display, screen: number): void;
|
||||||
|
interface SubstituteFunc {
|
||||||
|
(pattern: fontconfig.Pattern, data?: any | null): void;
|
||||||
|
}
|
||||||
|
namespace Font {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends PangoFc.Font.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* `PangoXftFont` is an implementation of `PangoFcFont` using the Xft
|
||||||
|
* library for rendering. It is used in conjunction with `PangoXftFontMap`.
|
||||||
|
*/
|
||||||
|
class Font extends PangoFc.Font {
|
||||||
|
static $gtype: GObject.GType<Font>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Font.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the glyph index for a given Unicode character
|
||||||
|
* for `font`.
|
||||||
|
*
|
||||||
|
* If you only want to determine whether the font has
|
||||||
|
* the glyph, use pango_xft_font_has_char().
|
||||||
|
*
|
||||||
|
* Use pango_fc_font_get_glyph() instead.
|
||||||
|
* @param wc Unicode codepoint to look up
|
||||||
|
* @returns the glyph index, or 0, if the Unicode character does not exist in the font.
|
||||||
|
*/
|
||||||
|
get_glyph(wc: number): number;
|
||||||
|
/**
|
||||||
|
* Returns the index of a glyph suitable for drawing `wc` as an
|
||||||
|
* unknown character.
|
||||||
|
*
|
||||||
|
* Use PANGO_GET_UNKNOWN_GLYPH() instead.
|
||||||
|
* @param wc the Unicode character for which a glyph is needed.
|
||||||
|
* @returns a glyph index into @font.
|
||||||
|
*/
|
||||||
|
get_unknown_glyph(wc: number): Pango.Glyph;
|
||||||
|
/**
|
||||||
|
* Determines whether `font` has a glyph for the codepoint `wc`.
|
||||||
|
*
|
||||||
|
* Use pango_fc_font_has_char() instead.
|
||||||
|
* @param wc Unicode codepoint to look up
|
||||||
|
* @returns %TRUE if @font has the requested codepoint.
|
||||||
|
*/
|
||||||
|
has_char(wc: number): boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace FontMap {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps<A extends GObject.Object = GObject.Object>
|
||||||
|
extends PangoFc.FontMap.ConstructorProps,
|
||||||
|
Gio.ListModel.ConstructorProps {}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* `PangoXftFontMap` is an implementation of `PangoFcFontMap` suitable for
|
||||||
|
* the Xft library as the renderer. It is used in to create fonts of
|
||||||
|
* type `PangoXftFont`.
|
||||||
|
*/
|
||||||
|
class FontMap<A extends GObject.Object = GObject.Object> extends PangoFc.FontMap implements Gio.ListModel<A> {
|
||||||
|
static $gtype: GObject.GType<FontMap>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<FontMap.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
// Inherited methods
|
||||||
|
/**
|
||||||
|
* Gets the type of the items in `list`.
|
||||||
|
*
|
||||||
|
* All items returned from g_list_model_get_item() are of the type
|
||||||
|
* returned by this function, or a subtype, or if the type is an
|
||||||
|
* interface, they are an implementation of that interface.
|
||||||
|
*
|
||||||
|
* The item type of a #GListModel can not change during the life of the
|
||||||
|
* model.
|
||||||
|
* @returns the #GType of the items contained in @list.
|
||||||
|
*/
|
||||||
|
get_item_type(): GObject.GType;
|
||||||
|
/**
|
||||||
|
* Gets the number of items in `list`.
|
||||||
|
*
|
||||||
|
* Depending on the model implementation, calling this function may be
|
||||||
|
* less efficient than iterating the list with increasing values for
|
||||||
|
* `position` until g_list_model_get_item() returns %NULL.
|
||||||
|
* @returns the number of items in @list.
|
||||||
|
*/
|
||||||
|
get_n_items(): number;
|
||||||
|
/**
|
||||||
|
* Get the item at `position`.
|
||||||
|
*
|
||||||
|
* If `position` is greater than the number of items in `list,` %NULL is
|
||||||
|
* returned.
|
||||||
|
*
|
||||||
|
* %NULL is never returned for an index that is smaller than the length
|
||||||
|
* of the list.
|
||||||
|
*
|
||||||
|
* This function is meant to be used by language bindings in place
|
||||||
|
* of g_list_model_get_item().
|
||||||
|
*
|
||||||
|
* See also: g_list_model_get_n_items()
|
||||||
|
* @param position the position of the item to fetch
|
||||||
|
* @returns the object at @position.
|
||||||
|
*/
|
||||||
|
get_item(position: number): A | null;
|
||||||
|
/**
|
||||||
|
* Emits the #GListModel::items-changed signal on `list`.
|
||||||
|
*
|
||||||
|
* This function should only be called by classes implementing
|
||||||
|
* #GListModel. It has to be called after the internal representation
|
||||||
|
* of `list` has been updated, because handlers connected to this signal
|
||||||
|
* might query the new state of the list.
|
||||||
|
*
|
||||||
|
* Implementations must only make changes to the model (as visible to
|
||||||
|
* its consumer) in places that will not cause problems for that
|
||||||
|
* consumer. For models that are driven directly by a write API (such
|
||||||
|
* as #GListStore), changes can be reported in response to uses of that
|
||||||
|
* API. For models that represent remote data, changes should only be
|
||||||
|
* made from a fresh mainloop dispatch. It is particularly not
|
||||||
|
* permitted to make changes in response to a call to the #GListModel
|
||||||
|
* consumer API.
|
||||||
|
*
|
||||||
|
* Stated another way: in general, it is assumed that code making a
|
||||||
|
* series of accesses to the model via the API, without returning to the
|
||||||
|
* mainloop, and without calling other code, will continue to view the
|
||||||
|
* same contents of the model.
|
||||||
|
* @param position the position at which @list changed
|
||||||
|
* @param removed the number of items removed
|
||||||
|
* @param added the number of items added
|
||||||
|
*/
|
||||||
|
items_changed(position: number, removed: number, added: number): void;
|
||||||
|
/**
|
||||||
|
* Get the item at `position`. If `position` is greater than the number of
|
||||||
|
* items in `list,` %NULL is returned.
|
||||||
|
*
|
||||||
|
* %NULL is never returned for an index that is smaller than the length
|
||||||
|
* of the list. See g_list_model_get_n_items().
|
||||||
|
*
|
||||||
|
* The same #GObject instance may not appear more than once in a #GListModel.
|
||||||
|
* @param position the position of the item to fetch
|
||||||
|
*/
|
||||||
|
vfunc_get_item(position: number): A | null;
|
||||||
|
/**
|
||||||
|
* Gets the type of the items in `list`.
|
||||||
|
*
|
||||||
|
* All items returned from g_list_model_get_item() are of the type
|
||||||
|
* returned by this function, or a subtype, or if the type is an
|
||||||
|
* interface, they are an implementation of that interface.
|
||||||
|
*
|
||||||
|
* The item type of a #GListModel can not change during the life of the
|
||||||
|
* model.
|
||||||
|
*/
|
||||||
|
vfunc_get_item_type(): GObject.GType;
|
||||||
|
/**
|
||||||
|
* Gets the number of items in `list`.
|
||||||
|
*
|
||||||
|
* Depending on the model implementation, calling this function may be
|
||||||
|
* less efficient than iterating the list with increasing values for
|
||||||
|
* `position` until g_list_model_get_item() returns %NULL.
|
||||||
|
*/
|
||||||
|
vfunc_get_n_items(): number;
|
||||||
|
/**
|
||||||
|
* Creates a binding between `source_property` on `source` and `target_property`
|
||||||
|
* on `target`.
|
||||||
|
*
|
||||||
|
* Whenever the `source_property` is changed the `target_property` is
|
||||||
|
* updated using the same value. For instance:
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* ```c
|
||||||
|
* g_object_bind_property (action, "active", widget, "sensitive", 0);
|
||||||
|
* ```
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* Will result in the "sensitive" property of the widget #GObject instance to be
|
||||||
|
* updated with the same value of the "active" property of the action #GObject
|
||||||
|
* instance.
|
||||||
|
*
|
||||||
|
* If `flags` contains %G_BINDING_BIDIRECTIONAL then the binding will be mutual:
|
||||||
|
* if `target_property` on `target` changes then the `source_property` on `source`
|
||||||
|
* will be updated as well.
|
||||||
|
*
|
||||||
|
* The binding will automatically be removed when either the `source` or the
|
||||||
|
* `target` instances are finalized. To remove the binding without affecting the
|
||||||
|
* `source` and the `target` you can just call g_object_unref() on the returned
|
||||||
|
* #GBinding instance.
|
||||||
|
*
|
||||||
|
* Removing the binding by calling g_object_unref() on it must only be done if
|
||||||
|
* the binding, `source` and `target` are only used from a single thread and it
|
||||||
|
* is clear that both `source` and `target` outlive the binding. Especially it
|
||||||
|
* is not safe to rely on this if the binding, `source` or `target` can be
|
||||||
|
* finalized from different threads. Keep another reference to the binding and
|
||||||
|
* use g_binding_unbind() instead to be on the safe side.
|
||||||
|
*
|
||||||
|
* A #GObject can have multiple bindings.
|
||||||
|
* @param source_property the property on @source to bind
|
||||||
|
* @param target the target #GObject
|
||||||
|
* @param target_property the property on @target to bind
|
||||||
|
* @param flags flags to pass to #GBinding
|
||||||
|
* @returns the #GBinding instance representing the binding between the two #GObject instances. The binding is released whenever the #GBinding reference count reaches zero.
|
||||||
|
*/
|
||||||
|
bind_property(
|
||||||
|
source_property: string,
|
||||||
|
target: GObject.Object,
|
||||||
|
target_property: string,
|
||||||
|
flags: GObject.BindingFlags | null,
|
||||||
|
): GObject.Binding;
|
||||||
|
/**
|
||||||
|
* Complete version of g_object_bind_property().
|
||||||
|
*
|
||||||
|
* Creates a binding between `source_property` on `source` and `target_property`
|
||||||
|
* on `target,` allowing you to set the transformation functions to be used by
|
||||||
|
* the binding.
|
||||||
|
*
|
||||||
|
* If `flags` contains %G_BINDING_BIDIRECTIONAL then the binding will be mutual:
|
||||||
|
* if `target_property` on `target` changes then the `source_property` on `source`
|
||||||
|
* will be updated as well. The `transform_from` function is only used in case
|
||||||
|
* of bidirectional bindings, otherwise it will be ignored
|
||||||
|
*
|
||||||
|
* The binding will automatically be removed when either the `source` or the
|
||||||
|
* `target` instances are finalized. This will release the reference that is
|
||||||
|
* being held on the #GBinding instance; if you want to hold on to the
|
||||||
|
* #GBinding instance, you will need to hold a reference to it.
|
||||||
|
*
|
||||||
|
* To remove the binding, call g_binding_unbind().
|
||||||
|
*
|
||||||
|
* A #GObject can have multiple bindings.
|
||||||
|
*
|
||||||
|
* The same `user_data` parameter will be used for both `transform_to`
|
||||||
|
* and `transform_from` transformation functions; the `notify` function will
|
||||||
|
* be called once, when the binding is removed. If you need different data
|
||||||
|
* for each transformation function, please use
|
||||||
|
* g_object_bind_property_with_closures() instead.
|
||||||
|
* @param source_property the property on @source to bind
|
||||||
|
* @param target the target #GObject
|
||||||
|
* @param target_property the property on @target to bind
|
||||||
|
* @param flags flags to pass to #GBinding
|
||||||
|
* @param transform_to the transformation function from the @source to the @target, or %NULL to use the default
|
||||||
|
* @param transform_from the transformation function from the @target to the @source, or %NULL to use the default
|
||||||
|
* @param notify a function to call when disposing the binding, to free resources used by the transformation functions, or %NULL if not required
|
||||||
|
* @returns the #GBinding instance representing the binding between the two #GObject instances. The binding is released whenever the #GBinding reference count reaches zero.
|
||||||
|
*/
|
||||||
|
bind_property_full(
|
||||||
|
source_property: string,
|
||||||
|
target: GObject.Object,
|
||||||
|
target_property: string,
|
||||||
|
flags: GObject.BindingFlags | null,
|
||||||
|
transform_to?: GObject.BindingTransformFunc | null,
|
||||||
|
transform_from?: GObject.BindingTransformFunc | null,
|
||||||
|
notify?: GLib.DestroyNotify | null,
|
||||||
|
): GObject.Binding;
|
||||||
|
// Conflicted with GObject.Object.bind_property_full
|
||||||
|
bind_property_full(...args: never[]): any;
|
||||||
|
/**
|
||||||
|
* This function is intended for #GObject implementations to re-enforce
|
||||||
|
* a [floating][floating-ref] object reference. Doing this is seldom
|
||||||
|
* required: all #GInitiallyUnowneds are created with a floating reference
|
||||||
|
* which usually just needs to be sunken by calling g_object_ref_sink().
|
||||||
|
*/
|
||||||
|
force_floating(): void;
|
||||||
|
/**
|
||||||
|
* Increases the freeze count on `object`. If the freeze count is
|
||||||
|
* non-zero, the emission of "notify" signals on `object` is
|
||||||
|
* stopped. The signals are queued until the freeze count is decreased
|
||||||
|
* to zero. Duplicate notifications are squashed so that at most one
|
||||||
|
* #GObject::notify signal is emitted for each property modified while the
|
||||||
|
* object is frozen.
|
||||||
|
*
|
||||||
|
* This is necessary for accessors that modify multiple properties to prevent
|
||||||
|
* premature notification while the object is still being modified.
|
||||||
|
*/
|
||||||
|
freeze_notify(): void;
|
||||||
|
/**
|
||||||
|
* Gets a named field from the objects table of associations (see g_object_set_data()).
|
||||||
|
* @param key name of the key for that association
|
||||||
|
* @returns the data if found, or %NULL if no such data exists.
|
||||||
|
*/
|
||||||
|
get_data(key: string): any | null;
|
||||||
|
/**
|
||||||
|
* Gets a property of an object.
|
||||||
|
*
|
||||||
|
* The value can be:
|
||||||
|
* - an empty GObject.Value initialized by G_VALUE_INIT, which will be automatically initialized with the expected type of the property (since GLib 2.60)
|
||||||
|
* - a GObject.Value initialized with the expected type of the property
|
||||||
|
* - a GObject.Value initialized with a type to which the expected type of the property can be transformed
|
||||||
|
*
|
||||||
|
* In general, a copy is made of the property contents and the caller is responsible for freeing the memory by calling GObject.Value.unset.
|
||||||
|
*
|
||||||
|
* Note that GObject.Object.get_property is really intended for language bindings, GObject.Object.get is much more convenient for C programming.
|
||||||
|
* @param property_name The name of the property to get
|
||||||
|
* @param value Return location for the property value. Can be an empty GObject.Value initialized by G_VALUE_INIT (auto-initialized with expected type since GLib 2.60), a GObject.Value initialized with the expected property type, or a GObject.Value initialized with a transformable type
|
||||||
|
*/
|
||||||
|
get_property(property_name: string, value: GObject.Value | any): any;
|
||||||
|
/**
|
||||||
|
* This function gets back user data pointers stored via
|
||||||
|
* g_object_set_qdata().
|
||||||
|
* @param quark A #GQuark, naming the user data pointer
|
||||||
|
* @returns The user data pointer set, or %NULL
|
||||||
|
*/
|
||||||
|
get_qdata(quark: GLib.Quark): any | null;
|
||||||
|
/**
|
||||||
|
* Gets `n_properties` properties for an `object`.
|
||||||
|
* Obtained properties will be set to `values`. All properties must be valid.
|
||||||
|
* Warnings will be emitted and undefined behaviour may result if invalid
|
||||||
|
* properties are passed in.
|
||||||
|
* @param names the names of each property to get
|
||||||
|
* @param values the values of each property to get
|
||||||
|
*/
|
||||||
|
getv(names: string[], values: (GObject.Value | any)[]): void;
|
||||||
|
/**
|
||||||
|
* Checks whether `object` has a [floating][floating-ref] reference.
|
||||||
|
* @returns %TRUE if @object has a floating reference
|
||||||
|
*/
|
||||||
|
is_floating(): boolean;
|
||||||
|
/**
|
||||||
|
* Emits a "notify" signal for the property `property_name` on `object`.
|
||||||
|
*
|
||||||
|
* When possible, eg. when signaling a property change from within the class
|
||||||
|
* that registered the property, you should use g_object_notify_by_pspec()
|
||||||
|
* instead.
|
||||||
|
*
|
||||||
|
* Note that emission of the notify signal may be blocked with
|
||||||
|
* g_object_freeze_notify(). In this case, the signal emissions are queued
|
||||||
|
* and will be emitted (in reverse order) when g_object_thaw_notify() is
|
||||||
|
* called.
|
||||||
|
* @param property_name the name of a property installed on the class of @object.
|
||||||
|
*/
|
||||||
|
notify(property_name: string): void;
|
||||||
|
/**
|
||||||
|
* Emits a "notify" signal for the property specified by `pspec` on `object`.
|
||||||
|
*
|
||||||
|
* This function omits the property name lookup, hence it is faster than
|
||||||
|
* g_object_notify().
|
||||||
|
*
|
||||||
|
* One way to avoid using g_object_notify() from within the
|
||||||
|
* class that registered the properties, and using g_object_notify_by_pspec()
|
||||||
|
* instead, is to store the GParamSpec used with
|
||||||
|
* g_object_class_install_property() inside a static array, e.g.:
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* ```c
|
||||||
|
* typedef enum
|
||||||
|
* {
|
||||||
|
* PROP_FOO = 1,
|
||||||
|
* PROP_LAST
|
||||||
|
* } MyObjectProperty;
|
||||||
|
*
|
||||||
|
* static GParamSpec *properties[PROP_LAST];
|
||||||
|
*
|
||||||
|
* static void
|
||||||
|
* my_object_class_init (MyObjectClass *klass)
|
||||||
|
* {
|
||||||
|
* properties[PROP_FOO] = g_param_spec_int ("foo", NULL, NULL,
|
||||||
|
* 0, 100,
|
||||||
|
* 50,
|
||||||
|
* G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
|
||||||
|
* g_object_class_install_property (gobject_class,
|
||||||
|
* PROP_FOO,
|
||||||
|
* properties[PROP_FOO]);
|
||||||
|
* }
|
||||||
|
* ```
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* and then notify a change on the "foo" property with:
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* ```c
|
||||||
|
* g_object_notify_by_pspec (self, properties[PROP_FOO]);
|
||||||
|
* ```
|
||||||
|
*
|
||||||
|
* @param pspec the #GParamSpec of a property installed on the class of @object.
|
||||||
|
*/
|
||||||
|
notify_by_pspec(pspec: GObject.ParamSpec): void;
|
||||||
|
/**
|
||||||
|
* Increases the reference count of `object`.
|
||||||
|
*
|
||||||
|
* Since GLib 2.56, if `GLIB_VERSION_MAX_ALLOWED` is 2.56 or greater, the type
|
||||||
|
* of `object` will be propagated to the return type (using the GCC typeof()
|
||||||
|
* extension), so any casting the caller needs to do on the return type must be
|
||||||
|
* explicit.
|
||||||
|
* @returns the same @object
|
||||||
|
*/
|
||||||
|
ref(): GObject.Object;
|
||||||
|
/**
|
||||||
|
* Increase the reference count of `object,` and possibly remove the
|
||||||
|
* [floating][floating-ref] reference, if `object` has a floating reference.
|
||||||
|
*
|
||||||
|
* In other words, if the object is floating, then this call "assumes
|
||||||
|
* ownership" of the floating reference, converting it to a normal
|
||||||
|
* reference by clearing the floating flag while leaving the reference
|
||||||
|
* count unchanged. If the object is not floating, then this call
|
||||||
|
* adds a new normal reference increasing the reference count by one.
|
||||||
|
*
|
||||||
|
* Since GLib 2.56, the type of `object` will be propagated to the return type
|
||||||
|
* under the same conditions as for g_object_ref().
|
||||||
|
* @returns @object
|
||||||
|
*/
|
||||||
|
ref_sink(): GObject.Object;
|
||||||
|
/**
|
||||||
|
* Releases all references to other objects. This can be used to break
|
||||||
|
* reference cycles.
|
||||||
|
*
|
||||||
|
* This function should only be called from object system implementations.
|
||||||
|
*/
|
||||||
|
run_dispose(): void;
|
||||||
|
/**
|
||||||
|
* Each object carries around a table of associations from
|
||||||
|
* strings to pointers. This function lets you set an association.
|
||||||
|
*
|
||||||
|
* If the object already had an association with that name,
|
||||||
|
* the old association will be destroyed.
|
||||||
|
*
|
||||||
|
* Internally, the `key` is converted to a #GQuark using g_quark_from_string().
|
||||||
|
* This means a copy of `key` is kept permanently (even after `object` has been
|
||||||
|
* finalized) — so it is recommended to only use a small, bounded set of values
|
||||||
|
* for `key` in your program, to avoid the #GQuark storage growing unbounded.
|
||||||
|
* @param key name of the key
|
||||||
|
* @param data data to associate with that key
|
||||||
|
*/
|
||||||
|
set_data(key: string, data?: any | null): void;
|
||||||
|
/**
|
||||||
|
* Sets a property on an object.
|
||||||
|
* @param property_name The name of the property to set
|
||||||
|
* @param value The value to set the property to
|
||||||
|
*/
|
||||||
|
set_property(property_name: string, value: GObject.Value | any): void;
|
||||||
|
/**
|
||||||
|
* Remove a specified datum from the object's data associations,
|
||||||
|
* without invoking the association's destroy handler.
|
||||||
|
* @param key name of the key
|
||||||
|
* @returns the data if found, or %NULL if no such data exists.
|
||||||
|
*/
|
||||||
|
steal_data(key: string): any | null;
|
||||||
|
/**
|
||||||
|
* This function gets back user data pointers stored via
|
||||||
|
* g_object_set_qdata() and removes the `data` from object
|
||||||
|
* without invoking its destroy() function (if any was
|
||||||
|
* set).
|
||||||
|
* Usually, calling this function is only required to update
|
||||||
|
* user data pointers with a destroy notifier, for example:
|
||||||
|
*
|
||||||
|
* ```c
|
||||||
|
* void
|
||||||
|
* object_add_to_user_list (GObject *object,
|
||||||
|
* const gchar *new_string)
|
||||||
|
* {
|
||||||
|
* // the quark, naming the object data
|
||||||
|
* GQuark quark_string_list = g_quark_from_static_string ("my-string-list");
|
||||||
|
* // retrieve the old string list
|
||||||
|
* GList *list = g_object_steal_qdata (object, quark_string_list);
|
||||||
|
*
|
||||||
|
* // prepend new string
|
||||||
|
* list = g_list_prepend (list, g_strdup (new_string));
|
||||||
|
* // this changed 'list', so we need to set it again
|
||||||
|
* g_object_set_qdata_full (object, quark_string_list, list, free_string_list);
|
||||||
|
* }
|
||||||
|
* static void
|
||||||
|
* free_string_list (gpointer data)
|
||||||
|
* {
|
||||||
|
* GList *node, *list = data;
|
||||||
|
*
|
||||||
|
* for (node = list; node; node = node->next)
|
||||||
|
* g_free (node->data);
|
||||||
|
* g_list_free (list);
|
||||||
|
* }
|
||||||
|
* ```
|
||||||
|
*
|
||||||
|
* Using g_object_get_qdata() in the above example, instead of
|
||||||
|
* g_object_steal_qdata() would have left the destroy function set,
|
||||||
|
* and thus the partial string list would have been freed upon
|
||||||
|
* g_object_set_qdata_full().
|
||||||
|
* @param quark A #GQuark, naming the user data pointer
|
||||||
|
* @returns The user data pointer set, or %NULL
|
||||||
|
*/
|
||||||
|
steal_qdata(quark: GLib.Quark): any | null;
|
||||||
|
/**
|
||||||
|
* Reverts the effect of a previous call to
|
||||||
|
* g_object_freeze_notify(). The freeze count is decreased on `object`
|
||||||
|
* and when it reaches zero, queued "notify" signals are emitted.
|
||||||
|
*
|
||||||
|
* Duplicate notifications for each property are squashed so that at most one
|
||||||
|
* #GObject::notify signal is emitted for each property, in the reverse order
|
||||||
|
* in which they have been queued.
|
||||||
|
*
|
||||||
|
* It is an error to call this function when the freeze count is zero.
|
||||||
|
*/
|
||||||
|
thaw_notify(): void;
|
||||||
|
/**
|
||||||
|
* Decreases the reference count of `object`. When its reference count
|
||||||
|
* drops to 0, the object is finalized (i.e. its memory is freed).
|
||||||
|
*
|
||||||
|
* If the pointer to the #GObject may be reused in future (for example, if it is
|
||||||
|
* an instance variable of another object), it is recommended to clear the
|
||||||
|
* pointer to %NULL rather than retain a dangling pointer to a potentially
|
||||||
|
* invalid #GObject instance. Use g_clear_object() for this.
|
||||||
|
*/
|
||||||
|
unref(): void;
|
||||||
|
/**
|
||||||
|
* This function essentially limits the life time of the `closure` to
|
||||||
|
* the life time of the object. That is, when the object is finalized,
|
||||||
|
* the `closure` is invalidated by calling g_closure_invalidate() on
|
||||||
|
* it, in order to prevent invocations of the closure with a finalized
|
||||||
|
* (nonexisting) object. Also, g_object_ref() and g_object_unref() are
|
||||||
|
* added as marshal guards to the `closure,` to ensure that an extra
|
||||||
|
* reference count is held on `object` during invocation of the
|
||||||
|
* `closure`. Usually, this function will be called on closures that
|
||||||
|
* use this `object` as closure data.
|
||||||
|
* @param closure #GClosure to watch
|
||||||
|
*/
|
||||||
|
watch_closure(closure: GObject.Closure): void;
|
||||||
|
/**
|
||||||
|
* the `constructed` function is called by g_object_new() as the
|
||||||
|
* final step of the object creation process. At the point of the call, all
|
||||||
|
* construction properties have been set on the object. The purpose of this
|
||||||
|
* call is to allow for object initialisation steps that can only be performed
|
||||||
|
* after construction properties have been set. `constructed` implementors
|
||||||
|
* should chain up to the `constructed` call of their parent class to allow it
|
||||||
|
* to complete its initialisation.
|
||||||
|
*/
|
||||||
|
vfunc_constructed(): void;
|
||||||
|
/**
|
||||||
|
* emits property change notification for a bunch
|
||||||
|
* of properties. Overriding `dispatch_properties_changed` should be rarely
|
||||||
|
* needed.
|
||||||
|
* @param n_pspecs
|
||||||
|
* @param pspecs
|
||||||
|
*/
|
||||||
|
vfunc_dispatch_properties_changed(n_pspecs: number, pspecs: GObject.ParamSpec): void;
|
||||||
|
/**
|
||||||
|
* the `dispose` function is supposed to drop all references to other
|
||||||
|
* objects, but keep the instance otherwise intact, so that client method
|
||||||
|
* invocations still work. It may be run multiple times (due to reference
|
||||||
|
* loops). Before returning, `dispose` should chain up to the `dispose` method
|
||||||
|
* of the parent class.
|
||||||
|
*/
|
||||||
|
vfunc_dispose(): void;
|
||||||
|
/**
|
||||||
|
* instance finalization function, should finish the finalization of
|
||||||
|
* the instance begun in `dispose` and chain up to the `finalize` method of the
|
||||||
|
* parent class.
|
||||||
|
*/
|
||||||
|
vfunc_finalize(): void;
|
||||||
|
/**
|
||||||
|
* the generic getter for all properties of this type. Should be
|
||||||
|
* overridden for every type with properties.
|
||||||
|
* @param property_id
|
||||||
|
* @param value
|
||||||
|
* @param pspec
|
||||||
|
*/
|
||||||
|
vfunc_get_property(property_id: number, value: GObject.Value | any, pspec: GObject.ParamSpec): void;
|
||||||
|
/**
|
||||||
|
* Emits a "notify" signal for the property `property_name` on `object`.
|
||||||
|
*
|
||||||
|
* When possible, eg. when signaling a property change from within the class
|
||||||
|
* that registered the property, you should use g_object_notify_by_pspec()
|
||||||
|
* instead.
|
||||||
|
*
|
||||||
|
* Note that emission of the notify signal may be blocked with
|
||||||
|
* g_object_freeze_notify(). In this case, the signal emissions are queued
|
||||||
|
* and will be emitted (in reverse order) when g_object_thaw_notify() is
|
||||||
|
* called.
|
||||||
|
* @param pspec
|
||||||
|
*/
|
||||||
|
vfunc_notify(pspec: GObject.ParamSpec): void;
|
||||||
|
/**
|
||||||
|
* the generic setter for all properties of this type. Should be
|
||||||
|
* overridden for every type with properties. If implementations of
|
||||||
|
* `set_property` don't emit property change notification explicitly, this will
|
||||||
|
* be done implicitly by the type system. However, if the notify signal is
|
||||||
|
* emitted explicitly, the type system will not emit it a second time.
|
||||||
|
* @param property_id
|
||||||
|
* @param value
|
||||||
|
* @param pspec
|
||||||
|
*/
|
||||||
|
vfunc_set_property(property_id: number, value: GObject.Value | any, pspec: GObject.ParamSpec): void;
|
||||||
|
/**
|
||||||
|
* Disconnects a handler from an instance so it will not be called during any future or currently ongoing emissions of the signal it has been connected to.
|
||||||
|
* @param id Handler ID of the handler to be disconnected
|
||||||
|
*/
|
||||||
|
disconnect(id: number): void;
|
||||||
|
/**
|
||||||
|
* Sets multiple properties of an object at once. The properties argument should be a dictionary mapping property names to values.
|
||||||
|
* @param properties Object containing the properties to set
|
||||||
|
*/
|
||||||
|
set(properties: { [key: string]: any }): void;
|
||||||
|
/**
|
||||||
|
* Blocks a handler of an instance so it will not be called during any signal emissions
|
||||||
|
* @param id Handler ID of the handler to be blocked
|
||||||
|
*/
|
||||||
|
block_signal_handler(id: number): void;
|
||||||
|
/**
|
||||||
|
* Unblocks a handler so it will be called again during any signal emissions
|
||||||
|
* @param id Handler ID of the handler to be unblocked
|
||||||
|
*/
|
||||||
|
unblock_signal_handler(id: number): void;
|
||||||
|
/**
|
||||||
|
* Stops a signal's emission by the given signal name. This will prevent the default handler and any subsequent signal handlers from being invoked.
|
||||||
|
* @param detailedName Name of the signal to stop emission of
|
||||||
|
*/
|
||||||
|
stop_emission_by_name(detailedName: string): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Renderer {
|
||||||
|
// Constructor properties interface
|
||||||
|
|
||||||
|
interface ConstructorProps extends Pango.Renderer.ConstructorProps {
|
||||||
|
display: any;
|
||||||
|
screen: number;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* `PangoXftRenderer` is a subclass of `PangoRenderer` used for rendering
|
||||||
|
* with Pango's Xft backend. It can be used directly, or it can be
|
||||||
|
* further subclassed to modify exactly how drawing of individual
|
||||||
|
* elements occurs.
|
||||||
|
*/
|
||||||
|
class Renderer extends Pango.Renderer {
|
||||||
|
static $gtype: GObject.GType<Renderer>;
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
|
||||||
|
set display(val: any);
|
||||||
|
set screen(val: number);
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
constructor(properties?: Partial<Renderer.ConstructorProps>, ...args: any[]);
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
|
||||||
|
static ['new'](display: xlib.Display, screen: number): Renderer;
|
||||||
|
|
||||||
|
// Virtual methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* draw the specified glyphs using
|
||||||
|
* the current foreground color and other foreground
|
||||||
|
* attributes
|
||||||
|
* @param xft_font
|
||||||
|
* @param glyphs
|
||||||
|
* @param n_glyphs
|
||||||
|
*/
|
||||||
|
vfunc_composite_glyphs(xft_font: xft.Font, glyphs: xft.GlyphSpec, n_glyphs: number): void;
|
||||||
|
/**
|
||||||
|
* draw the specified trapezoids using
|
||||||
|
* the current color and other attributes for `part`
|
||||||
|
* @param part
|
||||||
|
* @param trapezoids
|
||||||
|
* @param n_trapezoids
|
||||||
|
*/
|
||||||
|
vfunc_composite_trapezoids(part: Pango.RenderPart, trapezoids: xlib.XTrapezoid, n_trapezoids: number): void;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the default foreground color for a XftRenderer.
|
||||||
|
* @param default_color the default foreground color
|
||||||
|
*/
|
||||||
|
set_default_color(default_color: Pango.Color): void;
|
||||||
|
/**
|
||||||
|
* Sets the XftDraw object that the renderer is drawing to.
|
||||||
|
* The renderer must not be currently active.
|
||||||
|
* @param draw a XftDraw
|
||||||
|
*/
|
||||||
|
set_draw(draw: xft.Draw): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type RendererClass = typeof Renderer;
|
||||||
|
abstract class RendererPrivate {
|
||||||
|
static $gtype: GObject.GType<RendererPrivate>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 PangoXft;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://PangoXft' {
|
||||||
|
import PangoXft10 from 'gi://PangoXft?version=1.0';
|
||||||
|
export default PangoXft10;
|
||||||
|
}
|
||||||
|
// END
|
178
@girs/system.d.ts
vendored
Normal file
178
@girs/system.d.ts
vendored
Normal file
|
@ -0,0 +1,178 @@
|
||||||
|
/// <reference path="./gobject-2.0.d.ts" />
|
||||||
|
|
||||||
|
declare module 'system' {
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This property contains the name of the script as it was invoked from the command
|
||||||
|
* line. In C and other languages, this information is contained in the first element of
|
||||||
|
* the platform's equivalent of argv, but GJS's ARGV only contains the
|
||||||
|
* subsequent command-line arguments. In other words, `ARGV[0]` in GJS is the same as `argv[1]` in C.
|
||||||
|
* @version Gjs 1.68
|
||||||
|
*/
|
||||||
|
export const programInvocationName: string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This property contains version information about GJS.
|
||||||
|
*/
|
||||||
|
export const version: number;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The full path of the executed program.
|
||||||
|
* @version Gjs 1.68
|
||||||
|
*/
|
||||||
|
export const programPath: string | null;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A list of arguments passed to the current process.
|
||||||
|
* This is effectively an alias for the global `ARGV`, which is misleading in that
|
||||||
|
* it is not equivalent to the platform'`s` argv.
|
||||||
|
* @version Gjs 1.68
|
||||||
|
*/
|
||||||
|
export const programArgs: string[];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return the memory address of any object as a string.
|
||||||
|
* This is the address of memory being managed by the JavaScript engine, which may
|
||||||
|
* represent a wrapper around memory elsewhere.
|
||||||
|
* **Caution**, don't use this as a unique identifier!
|
||||||
|
* JavaScript's garbage collector can move objects around in memory, or
|
||||||
|
* deduplicate identical objects, so this value may change during the execution
|
||||||
|
* of a program.
|
||||||
|
* @param o Any Object
|
||||||
|
* @returns A hexadecimal string (e.g. `0xb4f170f0`)
|
||||||
|
*/
|
||||||
|
export function addressOf(o: object): string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return the memory address of any GObject as a string.
|
||||||
|
* See also {@link addressOf}
|
||||||
|
* @param o Any {@link GObject.Object}-derived instance
|
||||||
|
* @returns A hexadecimal string (e.g. `0xb4f170f0`)
|
||||||
|
* @version Gjs 1.58
|
||||||
|
*/
|
||||||
|
export function addressOfGObject(o: GObject.Object): string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Inserts a breakpoint instruction into the code.
|
||||||
|
* **Warning**: Using this function in code run outside of GDB will abort the process.
|
||||||
|
* With `System.breakpoint()` calls in your code, a GJS program can be debugged by
|
||||||
|
* running it in GDB:
|
||||||
|
* ```bash
|
||||||
|
* gdb --args gjs script.js
|
||||||
|
* ```
|
||||||
|
* Once GDB has started, you can start the program with run. When the debugger
|
||||||
|
* hits a breakpoint it will pause execution of the process and return to the
|
||||||
|
* prompt. You can then use the standard `backtrace` command to print a C++ stack
|
||||||
|
* trace, or use `call gjs_dumpstack()` to print a JavaScript stack trace:
|
||||||
|
* ```bash
|
||||||
|
* (gdb) run
|
||||||
|
* tarting program: /usr/bin/gjs -m script.js
|
||||||
|
* ...
|
||||||
|
* Thread 1 "gjs" received signal SIGTRAP, Trace/breakpoint trap.
|
||||||
|
* (gdb) call gjs_dumpstack()
|
||||||
|
* == Stack trace for context 0x5555555b7180 ==
|
||||||
|
* #0 555555640548 i file:///path/to/script.js:4 (394b8c3cc060 @ 12)
|
||||||
|
* #1 5555556404c8 i file:///path/to/script.js:7 (394b8c3cc0b0 @ 6)
|
||||||
|
* #2 7fffffffd3a0 b self-hosted:2408 (394b8c3a9650 @ 753)
|
||||||
|
* #3 5555556403e8 i self-hosted:2355 (394b8c3a9600 @ 375)
|
||||||
|
* (gdb)
|
||||||
|
* ```
|
||||||
|
* To continue executing the program, you can use the `continue` (or `cont`) to
|
||||||
|
* resume the process and debug further.
|
||||||
|
* Remember that if you run the program outside of GDB, it will abort at the
|
||||||
|
* breakpoint, so make sure to remove any calls to `System.breakpoint()` when
|
||||||
|
* you're done debugging.
|
||||||
|
*/
|
||||||
|
export function breakpoint(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Clears the timezone cache.
|
||||||
|
* This is a workaround for SpiderMonkey Bug [#1004706](https://bugzilla.mozilla.org/show_bug.cgi?id=1004706).
|
||||||
|
*/
|
||||||
|
export function clearDateCaches(): void;
|
||||||
|
|
||||||
|
/** Runs the garbage collector */
|
||||||
|
export function gc(): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return the reference count of any GObject-derived type. When an object's
|
||||||
|
* reference count is zero, it is cleaned up and erased from memory.
|
||||||
|
* @param o A {@link GObject.Object}
|
||||||
|
*/
|
||||||
|
export function refcount(o: GObject.Object): number;
|
||||||
|
/**
|
||||||
|
* See also: The [heapgraph](https://gitlab.gnome.org/GNOME/gjs/blob/HEAD/tools/heapgraph.md) utility in the GJS repository.
|
||||||
|
* Dump a representation of internal heap memory. If `path` is not given, GJS will
|
||||||
|
* write the contents to `stdout`.
|
||||||
|
* @param path Optional file path
|
||||||
|
*/
|
||||||
|
export function dumpHeap(path?: string): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Dump internal garbage collector statistics. If `path` is not given, GJS will
|
||||||
|
* write the contents to `stdout`.
|
||||||
|
* @param path Optional file path
|
||||||
|
* @version Gjs 1.70
|
||||||
|
* @example Output:
|
||||||
|
* ```json
|
||||||
|
* {
|
||||||
|
* "gcBytes": 794624,
|
||||||
|
* "gcMaxBytes": 4294967295,
|
||||||
|
* "mallocBytes": 224459,
|
||||||
|
* "gcIsHighFrequencyMode": true,
|
||||||
|
* "gcNumber": 1,
|
||||||
|
* "majorGCCount": 1,
|
||||||
|
* "minorGCCount": 1,
|
||||||
|
* "sliceCount": 1,
|
||||||
|
* "zone": {
|
||||||
|
* "gcBytes": 323584,
|
||||||
|
* "gcTriggerBytes": 42467328,
|
||||||
|
* "gcAllocTrigger": 36097228.8,
|
||||||
|
* "mallocBytes": 120432,
|
||||||
|
* "mallocTriggerBytes": 59768832,
|
||||||
|
* "gcNumber": 1
|
||||||
|
* }
|
||||||
|
* }
|
||||||
|
* ```
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
export function dumpMemoryInfo(path?: string): void;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This works the same as C's exit() function; exits the program, passing a
|
||||||
|
* certain error code to the shell. The shell expects the error code to be zero if
|
||||||
|
* there was no error, or non-zero (any value you please) to indicate an error.
|
||||||
|
*
|
||||||
|
* This value is used by other tools such as `make`; if `make` calls a program that
|
||||||
|
* returns a non-zero error code, then `make` aborts the build.
|
||||||
|
* @param code An exit code
|
||||||
|
*/
|
||||||
|
export function exit(code: number): never;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The System module provides common low-level facilities such as access to
|
||||||
|
* process arguments and exit(), as well as a number of useful functions and
|
||||||
|
* properties for debugging.
|
||||||
|
*
|
||||||
|
* Note that the majority of the functions and properties in this module should not
|
||||||
|
* be used in normal operation of a GJS application.
|
||||||
|
*/
|
||||||
|
const System: {
|
||||||
|
programInvocationName: typeof programInvocationName;
|
||||||
|
version: typeof version;
|
||||||
|
programPath: typeof programPath;
|
||||||
|
programArgs: typeof programArgs;
|
||||||
|
addressOf: typeof addressOf;
|
||||||
|
addressOfGObject: typeof addressOfGObject;
|
||||||
|
breakpoint: typeof breakpoint;
|
||||||
|
clearDateCaches: typeof clearDateCaches;
|
||||||
|
gc: typeof gc;
|
||||||
|
refcount: typeof refcount;
|
||||||
|
dumpHeap: typeof dumpHeap;
|
||||||
|
dumpMemoryInfo: typeof dumpMemoryInfo;
|
||||||
|
exit: typeof exit;
|
||||||
|
};
|
||||||
|
|
||||||
|
export default System;
|
||||||
|
}
|
13648
@girs/vulkan-1.0.d.ts
vendored
Normal file
13648
@girs/vulkan-1.0.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
52
@girs/win32-1.0.d.ts
vendored
Normal file
52
@girs/win32-1.0.d.ts
vendored
Normal file
|
@ -0,0 +1,52 @@
|
||||||
|
/// <reference path="./gobject-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://win32?version=1.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
export namespace win32 {
|
||||||
|
/**
|
||||||
|
* win32-1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
class MSG {
|
||||||
|
static $gtype: GObject.GType<MSG>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type HWND = number;
|
||||||
|
type HICON = number;
|
||||||
|
type HCURSOR = number;
|
||||||
|
type HGDIOBJ = number;
|
||||||
|
/**
|
||||||
|
* 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 win32;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://win32' {
|
||||||
|
import Win3210 from 'gi://win32?version=1.0';
|
||||||
|
export default Win3210;
|
||||||
|
}
|
||||||
|
// END
|
7651
@girs/wp-0.5.d.ts
vendored
Normal file
7651
@girs/wp-0.5.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load diff
48
@girs/xfixes-4.0.d.ts
vendored
Normal file
48
@girs/xfixes-4.0.d.ts
vendored
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
/// <reference path="./gobject-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://xfixes?version=4.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
export namespace xfixes {
|
||||||
|
/**
|
||||||
|
* xfixes-4.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
class XserverRegion {
|
||||||
|
static $gtype: GObject.GType<XserverRegion>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 xfixes;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://xfixes' {
|
||||||
|
import Xfixes40 from 'gi://xfixes?version=4.0';
|
||||||
|
export default Xfixes40;
|
||||||
|
}
|
||||||
|
// END
|
75
@girs/xft-2.0.d.ts
vendored
Normal file
75
@girs/xft-2.0.d.ts
vendored
Normal file
|
@ -0,0 +1,75 @@
|
||||||
|
/// <reference path="./xlib-2.0.d.ts" />
|
||||||
|
/// <reference path="./gobject-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://xft?version=2.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type xlib from 'gi://xlib?version=2.0';
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
export namespace xft {
|
||||||
|
/**
|
||||||
|
* xft-2.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
function init(): void;
|
||||||
|
class Color {
|
||||||
|
static $gtype: GObject.GType<Color>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Draw {
|
||||||
|
static $gtype: GObject.GType<Draw>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Font {
|
||||||
|
static $gtype: GObject.GType<Font>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class GlyphSpec {
|
||||||
|
static $gtype: GObject.GType<GlyphSpec>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 xft;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://xft' {
|
||||||
|
import Xft20 from 'gi://xft?version=2.0';
|
||||||
|
export default Xft20;
|
||||||
|
}
|
||||||
|
// END
|
134
@girs/xlib-2.0.d.ts
vendored
Normal file
134
@girs/xlib-2.0.d.ts
vendored
Normal file
|
@ -0,0 +1,134 @@
|
||||||
|
/// <reference path="./gobject-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://xlib?version=2.0' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
export namespace xlib {
|
||||||
|
/**
|
||||||
|
* xlib-2.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
function open_display(): void;
|
||||||
|
class Display {
|
||||||
|
static $gtype: GObject.GType<Display>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Screen {
|
||||||
|
static $gtype: GObject.GType<Screen>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Visual {
|
||||||
|
static $gtype: GObject.GType<Visual>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class XConfigureEvent {
|
||||||
|
static $gtype: GObject.GType<XConfigureEvent>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class XImage {
|
||||||
|
static $gtype: GObject.GType<XImage>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class XFontStruct {
|
||||||
|
static $gtype: GObject.GType<XFontStruct>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class XTrapezoid {
|
||||||
|
static $gtype: GObject.GType<XTrapezoid>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class XVisualInfo {
|
||||||
|
static $gtype: GObject.GType<XVisualInfo>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class XWindowAttributes {
|
||||||
|
static $gtype: GObject.GType<XWindowAttributes>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class XEvent {
|
||||||
|
static $gtype: GObject.GType<XEvent>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
type Atom = number;
|
||||||
|
type Colormap = number;
|
||||||
|
type Cursor = number;
|
||||||
|
type Drawable = number;
|
||||||
|
type GC = any;
|
||||||
|
type KeyCode = number;
|
||||||
|
type KeySym = number;
|
||||||
|
type Picture = number;
|
||||||
|
type Time = number;
|
||||||
|
type VisualID = number;
|
||||||
|
type Window = number;
|
||||||
|
type XID = number;
|
||||||
|
type Pixmap = number;
|
||||||
|
/**
|
||||||
|
* 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 xlib;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://xlib' {
|
||||||
|
import Xlib20 from 'gi://xlib?version=2.0';
|
||||||
|
export default Xlib20;
|
||||||
|
}
|
||||||
|
// END
|
96
@girs/xrandr-1.3.d.ts
vendored
Normal file
96
@girs/xrandr-1.3.d.ts
vendored
Normal file
|
@ -0,0 +1,96 @@
|
||||||
|
/// <reference path="./gobject-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://xrandr?version=1.3' {
|
||||||
|
// Module dependencies
|
||||||
|
import type GObject from 'gi://GObject?version=2.0';
|
||||||
|
|
||||||
|
export namespace xrandr {
|
||||||
|
/**
|
||||||
|
* xrandr-1.3
|
||||||
|
*/
|
||||||
|
|
||||||
|
class ScreenSize {
|
||||||
|
static $gtype: GObject.GType<ScreenSize>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class ScreenChangeNotifyEvent {
|
||||||
|
static $gtype: GObject.GType<ScreenChangeNotifyEvent>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class NotifyEvent {
|
||||||
|
static $gtype: GObject.GType<NotifyEvent>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class ScreenResources {
|
||||||
|
static $gtype: GObject.GType<ScreenResources>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class OutputChangeNotifyEvent {
|
||||||
|
static $gtype: GObject.GType<OutputChangeNotifyEvent>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class CrtcChangeNotifyEvent {
|
||||||
|
static $gtype: GObject.GType<CrtcChangeNotifyEvent>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class OutputPropertyNotifyEvent {
|
||||||
|
static $gtype: GObject.GType<OutputPropertyNotifyEvent>;
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
_init(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 xrandr;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'gi://xrandr' {
|
||||||
|
import Xrandr13 from 'gi://xrandr?version=1.3';
|
||||||
|
export default Xrandr13;
|
||||||
|
}
|
||||||
|
// END
|
10
app.ts
Normal file
10
app.ts
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
import { App } from "astal/gtk4"
|
||||||
|
import style from "./style/style.scss"
|
||||||
|
import Bar from "./windows/Bar"
|
||||||
|
|
||||||
|
App.start({
|
||||||
|
css: style,
|
||||||
|
main() {
|
||||||
|
App.get_monitors().map(Bar);
|
||||||
|
},
|
||||||
|
});
|
0
src/env.d.ts → env.d.ts
vendored
0
src/env.d.ts → env.d.ts
vendored
27
flake.lock
generated
27
flake.lock
generated
|
@ -8,11 +8,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1738087375,
|
"lastModified": 1744557573,
|
||||||
"narHash": "sha256-GLyNtU9A2VN22jNRHZ2OXuFfTJLh8uEVVt+ftsKUX0c=",
|
"narHash": "sha256-XAyj0iDuI51BytJ1PwN53uLpzTDdznPDQFG4RwihlTQ=",
|
||||||
"owner": "aylur",
|
"owner": "aylur",
|
||||||
"repo": "ags",
|
"repo": "ags",
|
||||||
"rev": "a6a7a0adb17740f4c34a59902701870d46fbb6a4",
|
"rev": "3ed9737bdbc8fc7a7c7ceef2165c9109f336bff6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -28,26 +28,6 @@
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
|
||||||
"lastModified": 1737670815,
|
|
||||||
"narHash": "sha256-ZCxxshGN7XooabArcoGkYSNx5yVunqjKJi2aTv6cznI=",
|
|
||||||
"owner": "aylur",
|
|
||||||
"repo": "astal",
|
|
||||||
"rev": "127e9cdcbf173846a3c40ddc0abfbb038df48042",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "aylur",
|
|
||||||
"repo": "astal",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"astal_2": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1742571008,
|
"lastModified": 1742571008,
|
||||||
"narHash": "sha256-5WgfJAeBpxiKbTR/gJvxrGYfqQRge5aUDcGKmU1YZ1Q=",
|
"narHash": "sha256-5WgfJAeBpxiKbTR/gJvxrGYfqQRge5aUDcGKmU1YZ1Q=",
|
||||||
|
@ -81,7 +61,6 @@
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"ags": "ags",
|
"ags": "ags",
|
||||||
"astal": "astal_2",
|
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
116
flake.nix
116
flake.nix
|
@ -1,4 +1,6 @@
|
||||||
{
|
{
|
||||||
|
description = "AGS Shell";
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
|
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
|
||||||
|
|
||||||
|
@ -6,126 +8,62 @@
|
||||||
url = "github:aylur/ags";
|
url = "github:aylur/ags";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
astal = {
|
|
||||||
url = "github:aylur/astal";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs =
|
outputs =
|
||||||
{ self, nixpkgs, ... }@inputs:
|
{
|
||||||
|
self,
|
||||||
|
nixpkgs,
|
||||||
|
ags,
|
||||||
|
}:
|
||||||
let
|
let
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
pkgs = nixpkgs.legacyPackages.${system};
|
pkgs = nixpkgs.legacyPackages.${system};
|
||||||
|
extraAgsLib = with ags.packages.${system}; [
|
||||||
nativeBuildInputs = with pkgs; [
|
|
||||||
blueprint-compiler
|
|
||||||
dart-sass
|
|
||||||
esbuild
|
|
||||||
fzf
|
|
||||||
gobject-introspection
|
|
||||||
libgtop
|
|
||||||
meson
|
|
||||||
ninja
|
|
||||||
pkg-config
|
|
||||||
wrapGAppsHook4
|
|
||||||
gtk4
|
|
||||||
gjs
|
|
||||||
];
|
|
||||||
|
|
||||||
agsPkgs = with inputs.ags.packages.${pkgs.system}; [
|
|
||||||
apps
|
apps
|
||||||
astal4
|
apps
|
||||||
|
battery
|
||||||
bluetooth
|
bluetooth
|
||||||
greet
|
cava
|
||||||
hyprland
|
hyprland
|
||||||
io
|
io
|
||||||
mpris
|
mpris
|
||||||
network
|
network
|
||||||
notifd
|
notifd
|
||||||
|
powerprofiles
|
||||||
tray
|
tray
|
||||||
wireplumber
|
wireplumber
|
||||||
];
|
];
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
packages.${system} = {
|
packages.${system} = {
|
||||||
|
default = ags.lib.bundle {
|
||||||
default = inputs.ags.lib.bundle {
|
|
||||||
inherit pkgs;
|
inherit pkgs;
|
||||||
src = ./.;
|
src = src/.;
|
||||||
name = "yash"; # name of executable
|
name = "ags-shell";
|
||||||
entry = "app.ts";
|
entry = "app.ts";
|
||||||
gtk4 = true;
|
gtk4 = true;
|
||||||
|
|
||||||
# additional libraries and executables to add to gjs' runtime
|
# additional libraries and executables to add to gjs' runtime
|
||||||
extraPackages = nativeBuildInputs ++ agsPkgs;
|
extraPackages = extraAgsLib ++ [ pkgs.fzf ];
|
||||||
};
|
};
|
||||||
|
|
||||||
# TO GEN TYPES, ags types is FUCKED
|
|
||||||
# npx -y @ts-for-gir/cli generate --ignoreVersionConflicts --outdir ./@girs -g /nix/store/gq0k2imad3ijd0ih87aiinj617wyh34f-gir-dirs/share/gir-1.0
|
|
||||||
# subtree script to manage git subtree pushes and pulls. Personal use feel free to remove
|
|
||||||
subtree = pkgs.writeScriptBin "subtree" ''
|
|
||||||
#!/usr/bin/env fish
|
|
||||||
|
|
||||||
if test (count $argv) -ne 1
|
|
||||||
echo "Usage: $argv0 push|pull"
|
|
||||||
exit 1
|
|
||||||
end
|
|
||||||
|
|
||||||
set action $argv[1]
|
|
||||||
set subtree_path "ags"
|
|
||||||
set remote "yash-origin"
|
|
||||||
set branch "main"
|
|
||||||
|
|
||||||
cd (git rev-parse --show-toplevel)
|
|
||||||
switch $action
|
|
||||||
case push
|
|
||||||
set changes (git status --porcelain "$subtree_path")
|
|
||||||
if test -n "$changes"
|
|
||||||
set_color yellow; echo " Cannot push. There are uncommitted changes in $subtree_path."
|
|
||||||
exit 1
|
|
||||||
end
|
|
||||||
git subtree push --prefix="$subtree_path" $remote $branch
|
|
||||||
case pull
|
|
||||||
git subtree pull --prefix="$subtree_path" $remote $branch
|
|
||||||
case commit
|
|
||||||
set changes (git status --porcelain "$subtree_path")
|
|
||||||
if test -z "$changes"
|
|
||||||
echo "No changes to commit in $subtree_path."
|
|
||||||
exit 0
|
|
||||||
end
|
|
||||||
echo " Enter commit message:"
|
|
||||||
read commit_message
|
|
||||||
if test -z "$commit_message"
|
|
||||||
echo "Commit message cannot be empty."
|
|
||||||
exit 1
|
|
||||||
end
|
|
||||||
git add "$subtree_path"
|
|
||||||
git commit -m "$commit_message"
|
|
||||||
case '*'
|
|
||||||
echo "Unknown argument. Use push or pull."
|
|
||||||
exit 1
|
|
||||||
end
|
|
||||||
'';
|
|
||||||
};
|
};
|
||||||
|
|
||||||
devShells.${system} = {
|
devShells.${system} = {
|
||||||
default = pkgs.mkShell {
|
default = pkgs.mkShell {
|
||||||
nativeBuildInputs = [
|
buildInputs = [
|
||||||
(inputs.ags.packages.${system}.agsFull.override {
|
# pkgs.typescript-language-server
|
||||||
extraPackages = nativeBuildInputs;
|
pkgs.glib
|
||||||
|
pkgs.glibc
|
||||||
|
pkgs.nodejs
|
||||||
|
pkgs.pnpm
|
||||||
|
pkgs.biome
|
||||||
|
pkgs.watchexec
|
||||||
|
# includes astal3 astal4 astal-io by default
|
||||||
|
(ags.packages.${system}.default.override {
|
||||||
|
extraPackages = extraAgsLib;
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
packages = [
|
|
||||||
pkgs.gjs
|
|
||||||
pkgs.pnpm
|
|
||||||
pkgs.nodejs
|
|
||||||
self.packages.${system}.subtree
|
|
||||||
inputs.ags.packages.${system}.agsFull
|
|
||||||
inputs.astal.packages.${system}.default
|
|
||||||
] ++ nativeBuildInputs;
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
{
|
{
|
||||||
"name": "astal-shell",
|
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"astal": "/nix/store/88kb2cyzj1hwad8s43wzdkafyp3hsh31-astal-gjs/share/astal/gjs"
|
"astal": "/nix/store/linv5jqg06dn798m2hainbw78pwad0n9-astal-gjs/share/astal/gjs"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"typescript": "5.7.3"
|
"typescript": "5.7.3"
|
||||||
}
|
},
|
||||||
|
"name": "astal-shell"
|
||||||
}
|
}
|
4
pnpm-lock.yaml
generated
4
pnpm-lock.yaml
generated
|
@ -7,6 +7,10 @@ settings:
|
||||||
importers:
|
importers:
|
||||||
|
|
||||||
.:
|
.:
|
||||||
|
dependencies:
|
||||||
|
astal:
|
||||||
|
specifier: /nix/store/linv5jqg06dn798m2hainbw78pwad0n9-astal-gjs/share/astal/gjs
|
||||||
|
version: link:../../../../../nix/store/linv5jqg06dn798m2hainbw78pwad0n9-astal-gjs/share/astal/gjs
|
||||||
devDependencies:
|
devDependencies:
|
||||||
typescript:
|
typescript:
|
||||||
specifier: 5.7.3
|
specifier: 5.7.3
|
||||||
|
|
10
src/app.ts
10
src/app.ts
|
@ -1,10 +0,0 @@
|
||||||
import { App } from "astal/gtk4";
|
|
||||||
import style from "./style.scss";
|
|
||||||
import Bar from "./app/windows/Bar";
|
|
||||||
|
|
||||||
App.start({
|
|
||||||
css: style,
|
|
||||||
main() {
|
|
||||||
App.get_monitors().map(Bar);
|
|
||||||
},
|
|
||||||
});
|
|
|
@ -1,16 +0,0 @@
|
||||||
import { App, Astal, Gtk, Gdk } from "astal/gtk4";
|
|
||||||
import { GLib, Variable } from "astal";
|
|
||||||
|
|
||||||
function Time({ format = "%H:%M - %A %e." }) {
|
|
||||||
const time = Variable<string>("").poll(1000, () => GLib.DateTime.new_now_local().format(format)!);
|
|
||||||
|
|
||||||
return <label cssName="Time" onDestroy={() => time.drop()} label={time()} />;
|
|
||||||
}
|
|
||||||
|
|
||||||
export default function BarCenter() {
|
|
||||||
return (
|
|
||||||
<box>
|
|
||||||
<Time />
|
|
||||||
</box>
|
|
||||||
);
|
|
||||||
}
|
|
|
@ -1,8 +0,0 @@
|
||||||
import { App, Astal, Gtk, Gdk } from "astal/gtk4";
|
|
||||||
import { Variable } from "astal";
|
|
||||||
|
|
||||||
const time = Variable("").poll(1000, "date");
|
|
||||||
|
|
||||||
export default function BarRight() {
|
|
||||||
return <></>;
|
|
||||||
}
|
|
|
@ -1,3 +0,0 @@
|
||||||
export { default as BarLeft } from "./BarLeft";
|
|
||||||
export { default as BarCenter } from "./BarCenter";
|
|
||||||
export { default as BarRight } from "./BarRight";
|
|
|
@ -1,36 +0,0 @@
|
||||||
import { App, Astal, Gtk, Gdk } from "astal/gtk4";
|
|
||||||
import { Variable } from "astal";
|
|
||||||
import { BarLeft, BarCenter, BarRight } from "./components";
|
|
||||||
|
|
||||||
const time = Variable("").poll(1000, "date");
|
|
||||||
|
|
||||||
export default function Bar(gdkmonitor: Gdk.Monitor) {
|
|
||||||
const { TOP, LEFT, RIGHT } = Astal.WindowAnchor;
|
|
||||||
|
|
||||||
return (
|
|
||||||
<window cssName="Bar" visible gdkmonitor={gdkmonitor} exclusivity={Astal.Exclusivity.EXCLUSIVE} anchor={TOP | LEFT | RIGHT} application={App}>
|
|
||||||
<centerbox cssName="Bar-centerbox">
|
|
||||||
<BarLeft />
|
|
||||||
<BarCenter />
|
|
||||||
<BarRight />
|
|
||||||
</centerbox>
|
|
||||||
</window>
|
|
||||||
);
|
|
||||||
|
|
||||||
// return (
|
|
||||||
// <window visible cssClasses={["Bar"]} gdkmonitor={gdkmonitor} exclusivity={Astal.Exclusivity.EXCLUSIVE} anchor={TOP | LEFT | RIGHT} application={App}>
|
|
||||||
// <centerbox cssName="centerbox">
|
|
||||||
// <button onClicked="echo hello" hexpand halign={Gtk.Align.CENTER}>
|
|
||||||
// Welcome to AGS!
|
|
||||||
// </button>
|
|
||||||
// <box />
|
|
||||||
// <menubutton hexpand halign={Gtk.Align.CENTER}>
|
|
||||||
// <label label={time()} />
|
|
||||||
// <popover>
|
|
||||||
// <Gtk.Calendar />
|
|
||||||
// </popover>
|
|
||||||
// </menubutton>
|
|
||||||
// </centerbox>
|
|
||||||
// </window>
|
|
||||||
// );
|
|
||||||
}
|
|
|
@ -2,8 +2,6 @@
|
||||||
"$schema": "https://json.schemastore.org/tsconfig",
|
"$schema": "https://json.schemastore.org/tsconfig",
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"experimentalDecorators": true,
|
"experimentalDecorators": true,
|
||||||
// "checkJs": true,
|
|
||||||
// "allowJs": true,
|
|
||||||
"jsx": "react-jsx",
|
"jsx": "react-jsx",
|
||||||
"jsxImportSource": "astal/gtk4",
|
"jsxImportSource": "astal/gtk4",
|
||||||
"module": "ES2022",
|
"module": "ES2022",
|
||||||
|
|
10
windows/Bar/components/Launcher.tsx
Normal file
10
windows/Bar/components/Launcher.tsx
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
|
||||||
|
import { GLib } from "astal";
|
||||||
|
|
||||||
|
export default function Launcher() {
|
||||||
|
return (
|
||||||
|
<button cssName="barauncher">
|
||||||
|
<image iconName={GLib.get_os_info("LOGO") || "missing-symbolic"} />
|
||||||
|
</button>
|
||||||
|
);
|
||||||
|
}
|
20
windows/Bar/components/Volume.tsx
Normal file
20
windows/Bar/components/Volume.tsx
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
import { bind } from "astal";
|
||||||
|
import Wp from "gi://AstalWp";
|
||||||
|
|
||||||
|
export default function VolumeStatus() {
|
||||||
|
const speaker = Wp.get_default()?.audio.defaultSpeaker!;
|
||||||
|
|
||||||
|
return (
|
||||||
|
<box
|
||||||
|
onScroll={(_, __, dy) =>
|
||||||
|
dy < 0 ? (speaker.volume += 0.01) : (speaker.volume += -0.01)
|
||||||
|
}
|
||||||
|
spacing={2}
|
||||||
|
>
|
||||||
|
<image iconName={bind(speaker, "volumeIcon")} />
|
||||||
|
<label
|
||||||
|
label={bind(speaker, "volume").as((p) => `${Math.floor(p * 100)}%`)}
|
||||||
|
/>
|
||||||
|
</box>
|
||||||
|
);
|
||||||
|
}
|
|
@ -1,18 +1,7 @@
|
||||||
import { App, Astal, Gtk, Gdk } from "astal/gtk4";
|
import { bind } from "astal";
|
||||||
import { bind, GLib, Variable } from "astal";
|
|
||||||
import Hyprland from "gi://AstalHyprland";
|
import Hyprland from "gi://AstalHyprland";
|
||||||
|
|
||||||
const time = Variable("").poll(1000, "date");
|
export default function Workspaces() {
|
||||||
|
|
||||||
function Launcher() {
|
|
||||||
return (
|
|
||||||
<button cssName="barauncher">
|
|
||||||
<image iconName={GLib.get_os_info("LOGO") || "missing-symbolic"} />
|
|
||||||
</button>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
function Workspaces() {
|
|
||||||
const hypr = Hyprland.get_default();
|
const hypr = Hyprland.get_default();
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
@ -35,12 +24,3 @@ function Workspaces() {
|
||||||
</box>
|
</box>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
export default function BarLeft() {
|
|
||||||
return (
|
|
||||||
<box>
|
|
||||||
<Launcher />
|
|
||||||
<Workspaces />
|
|
||||||
</box>
|
|
||||||
);
|
|
||||||
}
|
|
3
windows/Bar/components/index.tsx
Normal file
3
windows/Bar/components/index.tsx
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
export { default as Workspaces } from "./Workspaces";
|
||||||
|
export { default as Volume } from "./Volume";
|
||||||
|
export { default as Launcher } from "./Launcher";
|
66
windows/Bar/index.tsx
Normal file
66
windows/Bar/index.tsx
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
import { bind, Variable } from "astal";
|
||||||
|
import { App, Astal, Gtk, Gdk } from "astal/gtk4";
|
||||||
|
import GLib from "gi://GLib";
|
||||||
|
import { Volume, Workspaces, Launcher } from "./components";
|
||||||
|
|
||||||
|
const time = Variable<string>("").poll(1000, () => GLib.DateTime.new_now_local().format("%H:%M - %A %e.")!);
|
||||||
|
|
||||||
|
function Left() {
|
||||||
|
return (
|
||||||
|
<box>
|
||||||
|
<Launcher />
|
||||||
|
<Gtk.Separator />
|
||||||
|
<Workspaces />
|
||||||
|
</box>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
function Center() {
|
||||||
|
return (
|
||||||
|
<box>
|
||||||
|
{/* <Time /> */}
|
||||||
|
</box>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
function Right() {
|
||||||
|
return <></>;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export default function Bar(gdkmonitor: Gdk.Monitor) {
|
||||||
|
const { TOP, LEFT, RIGHT } = Astal.WindowAnchor;
|
||||||
|
|
||||||
|
return (
|
||||||
|
<window
|
||||||
|
visible
|
||||||
|
cssName="window"
|
||||||
|
gdkmonitor={gdkmonitor}
|
||||||
|
exclusivity={Astal.Exclusivity.EXCLUSIVE}
|
||||||
|
anchor={TOP | LEFT | RIGHT}
|
||||||
|
application={App}
|
||||||
|
>
|
||||||
|
<centerbox cssName="centerbox" cssClasses={["container"]}>
|
||||||
|
<box spacing={6} halign={Gtk.Align.CENTER}>
|
||||||
|
<Launcher />
|
||||||
|
<Workspaces />
|
||||||
|
</box>
|
||||||
|
|
||||||
|
<box spacing={6} halign={Gtk.Align.CENTER}>
|
||||||
|
<box>
|
||||||
|
<menubutton>
|
||||||
|
<label label={time()} />
|
||||||
|
<popover>
|
||||||
|
<Gtk.Calendar canTarget={false} canFocus={false} />
|
||||||
|
</popover>
|
||||||
|
</menubutton>
|
||||||
|
</box>
|
||||||
|
</box>
|
||||||
|
|
||||||
|
<box spacing={6} halign={Gtk.Align.END}>
|
||||||
|
<Volume />
|
||||||
|
</box>
|
||||||
|
</centerbox>
|
||||||
|
</window>
|
||||||
|
);
|
||||||
|
}
|
Loading…
Add table
Reference in a new issue