/// /// /// /// /// /// /// /// /// /// /// /// /// /// /** * 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://GnomeBG?version=4.0' { // Module dependencies import type GnomeDesktop from 'gi://GnomeDesktop?version=4.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'; import type GdkPixbuf from 'gi://GdkPixbuf?version=2.0'; import type GDesktopEnums from 'gi://GDesktopEnums?version=3.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'; export namespace GnomeBG { /** * GnomeBG-4.0 */ namespace BG { // Signal callback interfaces interface Changed { (): void; } interface Transitioned { (): void; } // Constructor properties interface interface ConstructorProps extends GObject.Object.ConstructorProps {} } class BG extends GObject.Object { static $gtype: GObject.GType; // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; static ['new'](): BG; // 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: 'transitioned', callback: (_source: this) => void): number; connect_after(signal: 'transitioned', callback: (_source: this) => void): number; emit(signal: 'transitioned'): void; // Methods changes_with_time(): boolean; /** * Creates a thumbnail for a certain frame, where 'frame' is somewhat * vaguely defined as 'suitable point to show while single-stepping * through the slideshow'. * @param factory * @param screen_area * @param dest_width * @param dest_height * @param frame_num * @returns the newly created thumbnail or or NULL if frame_num is out of bounds. */ create_frame_thumbnail( factory: GnomeDesktop.DesktopThumbnailFactory, screen_area: cairo.RectangleInt, dest_width: number, dest_height: number, frame_num: number, ): GdkPixbuf.Pixbuf; /** * Create a surface that can be set as background for `window`. * @param window * @param width * @param height * @returns %NULL on error (e.g. out of X connections) */ create_surface(window: Gdk.Surface, width: number, height: number): cairo.Surface; create_thumbnail( factory: GnomeDesktop.DesktopThumbnailFactory, screen_area: cairo.RectangleInt, dest_width: number, dest_height: number, ): GdkPixbuf.Pixbuf; draw(dest: GdkPixbuf.Pixbuf): void; get_filename(): string; get_image_size( factory: GnomeDesktop.DesktopThumbnailFactory, best_width: number, best_height: number, width: number, height: number, ): boolean; get_placement(): GDesktopEnums.BackgroundStyle; get_rgba(type: GDesktopEnums.BackgroundShading | null, primary: Gdk.RGBA, secondary: Gdk.RGBA): void; has_multiple_sizes(): boolean; is_dark(dest_width: number, dest_height: number): boolean; load_from_preferences(settings: Gio.Settings): void; save_to_preferences(settings: Gio.Settings): void; set_filename(filename: string): void; set_placement(placement: GDesktopEnums.BackgroundStyle | null): void; set_rgba(type: GDesktopEnums.BackgroundShading | null, primary: Gdk.RGBA, secondary: Gdk.RGBA): void; } namespace BGSlideShow { // Constructor properties interface interface ConstructorProps extends GObject.Object.ConstructorProps { file: Gio.File; has_multiple_sizes: boolean; hasMultipleSizes: boolean; start_time: number; startTime: number; total_duration: number; totalDuration: number; } } class BGSlideShow extends GObject.Object { static $gtype: GObject.GType; // Properties get file(): Gio.File; get has_multiple_sizes(): boolean; get hasMultipleSizes(): boolean; get start_time(): number; get startTime(): number; get total_duration(): number; get totalDuration(): number; // Fields parent_object: GObject.Object; // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; static ['new'](filename: string): BGSlideShow; // Methods /** * Returns the current slides progress. * @param width monitor width * @param height monitor height */ get_current_slide(width: number, height: number): [number, number, boolean, string, string]; /** * gets whether or not the slide show has multiple sizes for different monitors * @returns %TRUE if multiple sizes */ get_has_multiple_sizes(): boolean; /** * Returns number of slides in slide show */ get_num_slides(): number; /** * Retrieves slide by frame number * @param frame_number frame number * @param width monitor width * @param height monitor height * @returns %TRUE if successful */ get_slide( frame_number: number, width: number, height: number, ): [boolean, number, number, boolean, string, string]; /** * gets the start time of the slide show * @returns a timestamp */ get_start_time(): number; /** * gets the total duration of the slide show * @returns a timestamp */ get_total_duration(): number; /** * Tries to load the slide show. * @returns %TRUE if successful */ load(): boolean; /** * Tries to load the slide show asynchronously. * @param cancellable a #GCancellable * @param callback the callback */ load_async(cancellable?: Gio.Cancellable | null, callback?: Gio.AsyncReadyCallback | null): void; } type BGClass = typeof BG; type BGSlideShowClass = typeof BGSlideShow; abstract class BGSlideShowPrivate { static $gtype: GObject.GType; // 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 GnomeBG; } declare module 'gi://GnomeBG' { import GnomeBG40 from 'gi://GnomeBG?version=4.0'; export default GnomeBG40; } // END