@girs/gudev-1.0 1.0.0-3.0.0-beta.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/gudev-1.0.d.ts ADDED
@@ -0,0 +1,890 @@
1
+
2
+ /*
3
+ * Type Definitions for Gjs (https://gjs.guide/)
4
+ *
5
+ * These type definitions are automatically generated, do not edit them by hand.
6
+ * If you found a bug fix it in `ts-for-gir` or create a bug report on https://github.com/gjsify/ts-for-gjs
7
+ */
8
+ /**
9
+ * GUdev-1.0
10
+ */
11
+
12
+ import type GObject from '@girs/gobject-2.0';
13
+ import type GLib from '@girs/glib-2.0';
14
+
15
+ export namespace GUdev {
16
+
17
+ /**
18
+ * Enumeration used to specify a the type of a device.
19
+ */
20
+ enum DeviceType {
21
+ /**
22
+ * Device does not have a device file.
23
+ */
24
+ NONE,
25
+ /**
26
+ * Device is a block device.
27
+ */
28
+ BLOCK,
29
+ /**
30
+ * Device is a character device.
31
+ */
32
+ CHAR,
33
+ }
34
+ module Client {
35
+
36
+ // Signal callback interfaces
37
+
38
+ /**
39
+ * Signal callback interface for `uevent`
40
+ */
41
+ interface UeventSignalCallback {
42
+ ($obj: Client, action: string | null, device: Device): void
43
+ }
44
+
45
+
46
+ // Constructor properties interface
47
+
48
+ interface ConstructorProperties extends GObject.Object.ConstructorProperties {
49
+
50
+ // Own constructor properties of GUdev-1.0.GUdev.Client
51
+
52
+ /**
53
+ * The subsystems to listen for uevents on.
54
+ *
55
+ * To listen for only a specific DEVTYPE for a given SUBSYSTEM, use
56
+ * "subsystem/devtype". For example, to only listen for uevents
57
+ * where SUBSYSTEM is usb and DEVTYPE is usb_interface, use
58
+ * "usb/usb_interface".
59
+ *
60
+ * If this property is %NULL, then no events will be reported. If
61
+ * it's the empty array, events from all subsystems will be
62
+ * reported.
63
+ */
64
+ subsystems?: string[] | null
65
+ }
66
+
67
+ }
68
+
69
+ interface Client {
70
+
71
+ // Own properties of GUdev-1.0.GUdev.Client
72
+
73
+ /**
74
+ * The subsystems to listen for uevents on.
75
+ *
76
+ * To listen for only a specific DEVTYPE for a given SUBSYSTEM, use
77
+ * "subsystem/devtype". For example, to only listen for uevents
78
+ * where SUBSYSTEM is usb and DEVTYPE is usb_interface, use
79
+ * "usb/usb_interface".
80
+ *
81
+ * If this property is %NULL, then no events will be reported. If
82
+ * it's the empty array, events from all subsystems will be
83
+ * reported.
84
+ */
85
+ readonly subsystems: string[]
86
+
87
+ // Own fields of GUdev-1.0.GUdev.Client
88
+
89
+ parent: GObject.Object
90
+
91
+ // Owm methods of GUdev-1.0.GUdev.Client
92
+
93
+ /**
94
+ * Looks up a device for a device file.
95
+ * @param device_file A device file.
96
+ * @returns A #GUdevDevice object or %NULL if the device was not found. Free with g_object_unref().
97
+ */
98
+ query_by_device_file(device_file: string | null): Device | null
99
+ /**
100
+ * Looks up a device for a type and device number.
101
+ * @param type A value from the #GUdevDeviceType enumeration.
102
+ * @param number A device number.
103
+ * @returns A #GUdevDevice object or %NULL if the device was not found. Free with g_object_unref().
104
+ */
105
+ query_by_device_number(type: DeviceType, number: DeviceNumber): Device | null
106
+ /**
107
+ * Gets all devices belonging to `subsystem`.
108
+ * @param subsystem The subsystem to get devices for or %NULL to get all devices.
109
+ * @returns A list of #GUdevDevice objects. The caller should free the result by using g_object_unref() on each element in the list and then g_list_free() on the list.
110
+ */
111
+ query_by_subsystem(subsystem: string | null): Device[] | null
112
+ /**
113
+ * Looks up a device for a subsystem and name.
114
+ * @param subsystem A subsystem name.
115
+ * @param name The name of the device.
116
+ * @returns A #GUdevDevice object or %NULL if the device was not found. Free with g_object_unref().
117
+ */
118
+ query_by_subsystem_and_name(subsystem: string | null, name: string | null): Device | null
119
+ /**
120
+ * Looks up a device for a sysfs path.
121
+ * @param sysfs_path A sysfs path.
122
+ * @returns A #GUdevDevice object or %NULL if the device was not found. Free with g_object_unref().
123
+ */
124
+ query_by_sysfs_path(sysfs_path: string | null): Device | null
125
+
126
+ // Own virtual methods of GUdev-1.0.GUdev.Client
127
+
128
+ vfunc_uevent(action: string | null, device: Device): void
129
+
130
+ // Own signals of GUdev-1.0.GUdev.Client
131
+
132
+ connect(sigName: "uevent", callback: Client.UeventSignalCallback): number
133
+ connect_after(sigName: "uevent", callback: Client.UeventSignalCallback): number
134
+ emit(sigName: "uevent", action: string | null, device: Device, ...args: any[]): void
135
+
136
+ // Class property signals of GUdev-1.0.GUdev.Client
137
+
138
+ connect(sigName: "notify::subsystems", callback: (($obj: Client, pspec: GObject.ParamSpec) => void)): number
139
+ connect_after(sigName: "notify::subsystems", callback: (($obj: Client, pspec: GObject.ParamSpec) => void)): number
140
+ emit(sigName: "notify::subsystems", ...args: any[]): void
141
+ connect(sigName: string, callback: (...args: any[]) => void): number
142
+ connect_after(sigName: string, callback: (...args: any[]) => void): number
143
+ emit(sigName: string, ...args: any[]): void
144
+ disconnect(id: number): void
145
+ }
146
+
147
+ /**
148
+ * #GUdevClient is used to query information about devices on a Linux
149
+ * system from the Linux kernel and the udev device
150
+ * manager.
151
+ *
152
+ * Device information is retrieved from the kernel (through the
153
+ * <literal>sysfs</literal> filesystem) and the udev daemon (through a
154
+ * <literal>tmpfs</literal> filesystem) and presented through
155
+ * #GUdevDevice objects. This means that no blocking IO ever happens
156
+ * (in both cases, we are essentially just reading data from kernel
157
+ * memory) and as such there are no asynchronous versions of the
158
+ * provided methods.
159
+ *
160
+ * To get #GUdevDevice objects, use
161
+ * g_udev_client_query_by_subsystem(),
162
+ * g_udev_client_query_by_device_number(),
163
+ * g_udev_client_query_by_device_file(),
164
+ * g_udev_client_query_by_sysfs_path(),
165
+ * g_udev_client_query_by_subsystem_and_name()
166
+ * or the #GUdevEnumerator type.
167
+ *
168
+ * To listen to uevents, connect to the #GUdevClient::uevent signal.
169
+ * @class
170
+ */
171
+ class Client extends GObject.Object {
172
+
173
+ // Own properties of GUdev-1.0.GUdev.Client
174
+
175
+ static name: string
176
+ static $gtype: GObject.GType<Client>
177
+
178
+ // Constructors of GUdev-1.0.GUdev.Client
179
+
180
+ constructor(config?: Client.ConstructorProperties)
181
+ /**
182
+ * Constructs a #GUdevClient object that can be used to query
183
+ * information about devices. Connect to the #GUdevClient::uevent
184
+ * signal to listen for uevents. Note that signals are emitted in the
185
+ * <link linkend="g-main-context-push-thread-default">thread-default main loop</link>
186
+ * of the thread that you call this constructor from.
187
+ * @constructor
188
+ * @param subsystems A %NULL terminated string array of subsystems to listen for uevents on, %NULL to not listen on uevents at all, or an empty array to listen to uevents on all subsystems. See the documentation for the #GUdevClient:subsystems property for details on this parameter.
189
+ * @returns A new #GUdevClient object. Free with g_object_unref().
190
+ */
191
+ constructor(subsystems: string[] | null)
192
+ /**
193
+ * Constructs a #GUdevClient object that can be used to query
194
+ * information about devices. Connect to the #GUdevClient::uevent
195
+ * signal to listen for uevents. Note that signals are emitted in the
196
+ * <link linkend="g-main-context-push-thread-default">thread-default main loop</link>
197
+ * of the thread that you call this constructor from.
198
+ * @constructor
199
+ * @param subsystems A %NULL terminated string array of subsystems to listen for uevents on, %NULL to not listen on uevents at all, or an empty array to listen to uevents on all subsystems. See the documentation for the #GUdevClient:subsystems property for details on this parameter.
200
+ * @returns A new #GUdevClient object. Free with g_object_unref().
201
+ */
202
+ static new(subsystems: string[] | null): Client
203
+ _init(config?: Client.ConstructorProperties): void
204
+ }
205
+
206
+ module Device {
207
+
208
+ // Constructor properties interface
209
+
210
+ interface ConstructorProperties extends GObject.Object.ConstructorProperties {
211
+ }
212
+
213
+ }
214
+
215
+ interface Device {
216
+
217
+ // Own fields of GUdev-1.0.GUdev.Device
218
+
219
+ parent: GObject.Object
220
+
221
+ // Owm methods of GUdev-1.0.GUdev.Device
222
+
223
+ /**
224
+ * Gets the most recent action (e.g. "add", "remove", "change", etc.) for `device`.
225
+ * @returns An action string.
226
+ */
227
+ get_action(): string | null
228
+ /**
229
+ * Gets the device file for `device`.
230
+ * @returns The device file for @device or %NULL if no device file exists.
231
+ */
232
+ get_device_file(): string | null
233
+ /**
234
+ * Gets a list of symlinks (in <literal>/dev</literal>) that points to
235
+ * the device file for `device`.
236
+ * @returns A %NULL terminated string array of symlinks. This array is owned by @device and should not be freed by the caller.
237
+ */
238
+ get_device_file_symlinks(): string[]
239
+ /**
240
+ * Gets the device number, if any, for `device`.
241
+ * @returns The device number for @device or 0 if unknown.
242
+ */
243
+ get_device_number(): DeviceNumber
244
+ /**
245
+ * Gets the type of the device file, if any, for `device`.
246
+ * @returns The device number for @device or #G_UDEV_DEVICE_TYPE_NONE if the device does not have a device file.
247
+ */
248
+ get_device_type(): DeviceType
249
+ /**
250
+ * Gets the device type for `device`.
251
+ * @returns The devtype for @device.
252
+ */
253
+ get_devtype(): string | null
254
+ /**
255
+ * Gets the name of the driver used for `device`.
256
+ * @returns The name of the driver for @device or %NULL if unknown.
257
+ */
258
+ get_driver(): string | null
259
+ /**
260
+ * Gets whether `device` has been initialized.
261
+ * @returns Whether @device has been initialized.
262
+ */
263
+ get_is_initialized(): boolean
264
+ /**
265
+ * Gets the name of `device,` e.g. "sda3".
266
+ * @returns The name of @device.
267
+ */
268
+ get_name(): string | null
269
+ /**
270
+ * Gets the number of `device,` e.g. "3" if g_udev_device_get_name() returns "sda3".
271
+ * @returns The number of @device.
272
+ */
273
+ get_number(): string | null
274
+ /**
275
+ * Gets the immediate parent of `device,` if any.
276
+ * @returns A #GUdevDevice or %NULL if @device has no parent. Free with g_object_unref().
277
+ */
278
+ get_parent(): Device | null
279
+ /**
280
+ * Walks up the chain of parents of `device` and returns the first
281
+ * device encountered where `subsystem` and `devtype` matches, if any.
282
+ * @param subsystem The subsystem of the parent to get.
283
+ * @param devtype The devtype of the parent to get or %NULL.
284
+ * @returns A #GUdevDevice or %NULL if @device has no parent with @subsystem and @devtype. Free with g_object_unref().
285
+ */
286
+ get_parent_with_subsystem(subsystem: string | null, devtype: string | null): Device | null
287
+ /**
288
+ * Look up the value for `key` on `device`.
289
+ * @param key Name of property.
290
+ * @returns The value for @key or %NULL if @key doesn't exist on @device. Do not free this string, it is owned by @device.
291
+ */
292
+ get_property(key: string | null): string | null
293
+
294
+ // Overloads of get_property
295
+
296
+ /**
297
+ * Gets a property of an object.
298
+ *
299
+ * The `value` can be:
300
+ *
301
+ * - an empty #GValue initialized by %G_VALUE_INIT, which will be
302
+ * automatically initialized with the expected type of the property
303
+ * (since GLib 2.60)
304
+ * - a #GValue initialized with the expected type of the property
305
+ * - a #GValue initialized with a type to which the expected type
306
+ * of the property can be transformed
307
+ *
308
+ * In general, a copy is made of the property contents and the caller is
309
+ * responsible for freeing the memory by calling g_value_unset().
310
+ *
311
+ * Note that g_object_get_property() is really intended for language
312
+ * bindings, g_object_get() is much more convenient for C programming.
313
+ * @param property_name the name of the property to get
314
+ * @param value return location for the property value
315
+ */
316
+ get_property(property_name: string | null, value: any): void
317
+ /**
318
+ * Look up the value for `key` on `device` and convert it to an
319
+ * boolean. This is done by doing a case-insensitive string comparison
320
+ * on the string value against "1" and "true".
321
+ * @param key Name of property.
322
+ * @returns The value for @key or %FALSE if @key doesn't exist or isn't a #gboolean.
323
+ */
324
+ get_property_as_boolean(key: string | null): boolean
325
+ /**
326
+ * Look up the value for `key` on `device` and convert it to a double
327
+ * precision floating point number using g_ascii_strtod().
328
+ * @param key Name of property.
329
+ * @returns The value for @key or 0.0 if @key doesn't exist or isn't a #gdouble.
330
+ */
331
+ get_property_as_double(key: string | null): number
332
+ /**
333
+ * Look up the value for `key` on `device` and convert it to an integer
334
+ * using strtol().
335
+ * @param key Name of property.
336
+ * @returns The value for @key or 0 if @key doesn't exist or isn't an integer.
337
+ */
338
+ get_property_as_int(key: string | null): number
339
+ /**
340
+ * Look up the value for `key` on `device` and return the result of
341
+ * splitting it into non-empty tokens split at white space (only space
342
+ * (' '), form-feed ('\f'), newline ('\n'), carriage return ('\r'),
343
+ * horizontal tab ('\t'), and vertical tab ('\v') are considered; the
344
+ * locale is not taken into account).
345
+ * @param key Name of property.
346
+ * @returns The value of @key on @device split into tokens or %NULL if @key doesn't exist. This array is owned by @device and should not be freed by the caller.
347
+ */
348
+ get_property_as_strv(key: string | null): string[] | null
349
+ /**
350
+ * Look up the value for `key` on `device` and convert it to an unsigned
351
+ * 64-bit integer using g_ascii_strtoull().
352
+ * @param key Name of property.
353
+ * @returns The value for @key or 0 if @key doesn't exist or isn't a #guint64.
354
+ */
355
+ get_property_as_uint64(key: string | null): number
356
+ /**
357
+ * Gets all keys for properties on `device`.
358
+ * @returns A %NULL terminated string array of property keys. This array is owned by @device and should not be freed by the caller.
359
+ */
360
+ get_property_keys(): string[]
361
+ /**
362
+ * Gets the most recent sequence number for `device`.
363
+ * @returns A sequence number.
364
+ */
365
+ get_seqnum(): number
366
+ /**
367
+ * Gets the subsystem for `device`.
368
+ * @returns The subsystem for @device.
369
+ */
370
+ get_subsystem(): string | null
371
+ /**
372
+ * Look up the sysfs attribute with `name` on `device`. The retrieved value
373
+ * is cached in the device. Repeated calls will return the same value and
374
+ * not open the attribute again, unless updated through one of the
375
+ * "uncached" functions.
376
+ * @param name Name of the sysfs attribute.
377
+ * @returns The value of the sysfs attribute or %NULL if there is no such attribute. Do not free this string, it is owned by @device.
378
+ */
379
+ get_sysfs_attr(name: string | null): string | null
380
+ /**
381
+ * Look up the sysfs attribute with `name` on `device` and convert it to an
382
+ * boolean. This is done by doing a case-insensitive string comparison
383
+ * on the string value against "1", "true", "Y" and "y". The retrieved value is
384
+ * cached in the device. Repeated calls will return the same value and
385
+ * not open the attribute again, unless updated through one of the
386
+ * "uncached" functions.
387
+ * @param name Name of the sysfs attribute.
388
+ * @returns The value of the sysfs attribute or %FALSE if there is no such attribute.
389
+ */
390
+ get_sysfs_attr_as_boolean(name: string | null): boolean
391
+ /**
392
+ * Look up the sysfs attribute with `name` on `device` and convert it to an
393
+ * boolean. This is done by doing a case-insensitive string comparison
394
+ * on the string value against "1", "true", "Y" and "y". This function does
395
+ * blocking I/O, and updates the sysfs attributes cache.
396
+ *
397
+ * Before version 238 the uncached getters would not strip trailing newlines.
398
+ * @param name Name of the sysfs attribute.
399
+ * @returns The value of the sysfs attribute or %FALSE if there is no such attribute.
400
+ */
401
+ get_sysfs_attr_as_boolean_uncached(name: string | null): boolean
402
+ /**
403
+ * Look up the sysfs attribute with `name` on `device` and convert it to a double
404
+ * precision floating point number using g_ascii_strtod(). The retrieved value is cached
405
+ * in the device. Repeated calls will return the same value and not open the
406
+ * attribute again, unless updated through one of the "uncached" functions.
407
+ * @param name Name of the sysfs attribute.
408
+ * @returns The value of the sysfs attribute or 0.0 if there is no such attribute.
409
+ */
410
+ get_sysfs_attr_as_double(name: string | null): number
411
+ /**
412
+ * Look up the sysfs attribute with `name` on `device` and convert it to a double
413
+ * precision floating point number using g_ascii_strtod(). This function does blocking
414
+ * I/O, and updates the sysfs attributes cache.
415
+ *
416
+ * Before version 238 the uncached getters would not strip trailing newlines.
417
+ * @param name Name of the sysfs attribute.
418
+ * @returns The value of the sysfs attribute or 0.0 if there is no such attribute.
419
+ */
420
+ get_sysfs_attr_as_double_uncached(name: string | null): number
421
+ /**
422
+ * Look up the sysfs attribute with `name` on `device` and convert it to an integer
423
+ * using strtol(). The retrieved value is cached in the device. Repeated calls
424
+ * will return the same value and not open the attribute again, unless updated
425
+ * through one of the "uncached" functions.
426
+ * @param name Name of the sysfs attribute.
427
+ * @returns The value of the sysfs attribute or 0 if there is no such attribute.
428
+ */
429
+ get_sysfs_attr_as_int(name: string | null): number
430
+ /**
431
+ * Look up the sysfs attribute with `name` on `device` and convert it to an integer
432
+ * using strtol(). This function does blocking I/O, and updates the sysfs
433
+ * attributes cache.
434
+ *
435
+ * Before version 238 the uncached getters would not strip trailing newlines.
436
+ * @param name Name of the sysfs attribute.
437
+ * @returns The value of the sysfs attribute or 0 if there is no such attribute.
438
+ */
439
+ get_sysfs_attr_as_int_uncached(name: string | null): number
440
+ /**
441
+ * Look up the sysfs attribute with `name` on `device` and return the result of
442
+ * splitting it into non-empty tokens split at white space (only space (' '),
443
+ * form-feed ('\f'), newline ('\n'), carriage return ('\r'), horizontal
444
+ * tab ('\t'), and vertical tab ('\v') are considered; the locale is
445
+ * not taken into account).
446
+ *
447
+ * The retrieved value is cached in the device. Repeated calls will return
448
+ * the same value and not open the attribute again, unless updated through
449
+ * one of the "uncached" functions.
450
+ * @param name Name of the sysfs attribute.
451
+ * @returns The value of the sysfs attribute split into tokens or %NULL if there is no such attribute. This array is owned by @device and should not be freed by the caller.
452
+ */
453
+ get_sysfs_attr_as_strv(name: string | null): string[] | null
454
+ /**
455
+ * Look up the sysfs attribute with `name` on `device` and return the result of
456
+ * splitting it into non-empty tokens split at white space (only space (' '),
457
+ * form-feed ('\f'), newline ('\n'), carriage return ('\r'), horizontal
458
+ * tab ('\t'), and vertical tab ('\v') are considered; the locale is
459
+ * not taken into account).
460
+ *
461
+ * This function does blocking I/O, and updates the sysfs attributes cache.
462
+ * @param name Name of the sysfs attribute.
463
+ * @returns The value of the sysfs attribute split into tokens or %NULL if there is no such attribute. This array is owned by @device and should not be freed by the caller. Before version 238 the uncached getters would not strip trailing newlines.
464
+ */
465
+ get_sysfs_attr_as_strv_uncached(name: string | null): string[] | null
466
+ /**
467
+ * Look up the sysfs attribute with `name` on `device` and convert it to an unsigned
468
+ * 64-bit integer using g_ascii_strtoull(). The retrieved value is cached in the
469
+ * device. Repeated calls will return the same value and not open the attribute
470
+ * again, unless updated through one of the "uncached" functions.
471
+ * @param name Name of the sysfs attribute.
472
+ * @returns The value of the sysfs attribute or 0 if there is no such attribute.
473
+ */
474
+ get_sysfs_attr_as_uint64(name: string | null): number
475
+ /**
476
+ * Look up the sysfs attribute with `name` on `device` and convert it to an unsigned
477
+ * 64-bit integer using g_ascii_strtoull(). This function does blocking I/O, and
478
+ * updates the sysfs attributes cache.
479
+ *
480
+ * Before version 238 the uncached getters would not strip trailing newlines.
481
+ * @param name Name of the sysfs attribute.
482
+ * @returns The value of the sysfs attribute or 0 if there is no such attribute.
483
+ */
484
+ get_sysfs_attr_as_uint64_uncached(name: string | null): number
485
+ /**
486
+ * Gets all keys for sysfs attributes on `device`.
487
+ * @returns A %NULL terminated string array of sysfs attribute keys. This array is owned by @device and should not be freed by the caller.
488
+ */
489
+ get_sysfs_attr_keys(): string[]
490
+ /**
491
+ * Look up the sysfs attribute with `name` on `device`. This function does
492
+ * blocking I/O, and updates the sysfs attributes cache.
493
+ *
494
+ * Before version 238 the uncached getters would not strip trailing newlines.
495
+ * @param name Name of the sysfs attribute.
496
+ * @returns The value of the sysfs attribute or %NULL if there is no such attribute. Do not free this string, it is owned by @device.
497
+ */
498
+ get_sysfs_attr_uncached(name: string | null): string | null
499
+ /**
500
+ * Gets the sysfs path for `device`.
501
+ * @returns The sysfs path for @device.
502
+ */
503
+ get_sysfs_path(): string | null
504
+ /**
505
+ * Gets all tags for `device`.
506
+ * @returns A %NULL terminated string array of tags. This array is owned by @device and should not be freed by the caller.
507
+ */
508
+ get_tags(): string[]
509
+ /**
510
+ * Gets number of micro-seconds since `device` was initialized.
511
+ *
512
+ * This only works for devices with properties in the udev
513
+ * database. All other devices return 0.
514
+ * @returns Number of micro-seconds since @device was initialized or 0 if unknown.
515
+ */
516
+ get_usec_since_initialized(): number
517
+ /**
518
+ * Check if a the property with the given key exists.
519
+ * @param key Name of property.
520
+ * @returns %TRUE only if the value for @key exist.
521
+ */
522
+ has_property(key: string | null): boolean
523
+ /**
524
+ * Check if a the sysfs attribute with the given key exists. The
525
+ * retrieved value is cached in the device. Repeated calls will
526
+ * return the same result and not check for the presence of the
527
+ * attribute again, unless updated through one of the "uncached"
528
+ * functions.
529
+ * @param key Name of sysfs attribute.
530
+ * @returns %TRUE only if the value for @key exist.
531
+ */
532
+ has_sysfs_attr(key: string | null): boolean
533
+ /**
534
+ * Check if a the sysfs attribute with the given key exists. The
535
+ * retrieved value is cached in the device. Repeated calls will
536
+ * return the same result and not check for the presence of the
537
+ * attribute again, unless updated through one of the "uncached"
538
+ * functions.
539
+ * @param key Name of sysfs attribute.
540
+ * @returns %TRUE only if the value for @key exist.
541
+ */
542
+ has_sysfs_attr_uncached(key: string | null): boolean
543
+
544
+ // Class property signals of GUdev-1.0.GUdev.Device
545
+
546
+ connect(sigName: string, callback: (...args: any[]) => void): number
547
+ connect_after(sigName: string, callback: (...args: any[]) => void): number
548
+ emit(sigName: string, ...args: any[]): void
549
+ disconnect(id: number): void
550
+ }
551
+
552
+ /**
553
+ * The #GUdevDevice class is used to get information about a specific
554
+ * device. Note that you cannot instantiate a #GUdevDevice object
555
+ * yourself. Instead you must use #GUdevClient to obtain #GUdevDevice
556
+ * objects.
557
+ *
558
+ * To get basic information about a device, use
559
+ * g_udev_device_get_subsystem(), g_udev_device_get_devtype(),
560
+ * g_udev_device_get_name(), g_udev_device_get_number(),
561
+ * g_udev_device_get_sysfs_path(), g_udev_device_get_driver(),
562
+ * g_udev_device_get_action(), g_udev_device_get_seqnum(),
563
+ * g_udev_device_get_device_type(), g_udev_device_get_device_number(),
564
+ * g_udev_device_get_device_file(),
565
+ * g_udev_device_get_device_file_symlinks().
566
+ *
567
+ * To navigate the device tree, use g_udev_device_get_parent() and
568
+ * g_udev_device_get_parent_with_subsystem().
569
+ *
570
+ * To access udev properties for the device, use
571
+ * g_udev_device_get_property_keys(),
572
+ * g_udev_device_has_property(),
573
+ * g_udev_device_get_property(),
574
+ * g_udev_device_get_property_as_int(),
575
+ * g_udev_device_get_property_as_uint64(),
576
+ * g_udev_device_get_property_as_double(),
577
+ * g_udev_device_get_property_as_boolean() and
578
+ * g_udev_device_get_property_as_strv().
579
+ *
580
+ * To access sysfs attributes for the device, use
581
+ * g_udev_device_get_sysfs_attr_keys(),
582
+ * g_udev_device_has_sysfs_attr(),
583
+ * g_udev_device_get_sysfs_attr(),
584
+ * g_udev_device_get_sysfs_attr_as_int(),
585
+ * g_udev_device_get_sysfs_attr_as_uint64(),
586
+ * g_udev_device_get_sysfs_attr_as_double(),
587
+ * g_udev_device_get_sysfs_attr_as_boolean() and
588
+ * g_udev_device_get_sysfs_attr_as_strv().
589
+ *
590
+ * Note that all getters on #GUdevDevice are non-reffing – returned
591
+ * values are owned by the object, should not be freed and are only
592
+ * valid as long as the object is alive.
593
+ *
594
+ * By design, #GUdevDevice will not react to changes for a device – it
595
+ * only contains a snapshot of information when the #GUdevDevice
596
+ * object was created. To work with changes, you typically connect to
597
+ * the #GUdevClient::uevent signal on a #GUdevClient and get a new
598
+ * #GUdevDevice whenever an event happens.
599
+ * @class
600
+ */
601
+ class Device extends GObject.Object {
602
+
603
+ // Own properties of GUdev-1.0.GUdev.Device
604
+
605
+ static name: string
606
+ static $gtype: GObject.GType<Device>
607
+
608
+ // Constructors of GUdev-1.0.GUdev.Device
609
+
610
+ constructor(config?: Device.ConstructorProperties)
611
+ _init(config?: Device.ConstructorProperties): void
612
+ }
613
+
614
+ module Enumerator {
615
+
616
+ // Constructor properties interface
617
+
618
+ interface ConstructorProperties extends GObject.Object.ConstructorProperties {
619
+
620
+ // Own constructor properties of GUdev-1.0.GUdev.Enumerator
621
+
622
+ /**
623
+ * The #GUdevClient to enumerate devices from.
624
+ */
625
+ client?: Client | null
626
+ }
627
+
628
+ }
629
+
630
+ interface Enumerator {
631
+
632
+ // Own properties of GUdev-1.0.GUdev.Enumerator
633
+
634
+ /**
635
+ * The #GUdevClient to enumerate devices from.
636
+ */
637
+ readonly client: Client
638
+
639
+ // Own fields of GUdev-1.0.GUdev.Enumerator
640
+
641
+ parent: GObject.Object
642
+
643
+ // Owm methods of GUdev-1.0.GUdev.Enumerator
644
+
645
+ /**
646
+ * All returned devices will be initialized.
647
+ * @returns The passed in @enumerator.
648
+ */
649
+ add_match_is_initialized(): Enumerator
650
+ /**
651
+ * All returned devices will match the given `name`.
652
+ * @param name Wildcard filter for kernel name e.g. "sda*".
653
+ * @returns The passed in @enumerator.
654
+ */
655
+ add_match_name(name: string | null): Enumerator
656
+ /**
657
+ * All returned devices will have a property matching the given `name` and `value`.
658
+ * @param name Wildcard filter for property name.
659
+ * @param value Wildcard filter for property value.
660
+ * @returns The passed in @enumerator.
661
+ */
662
+ add_match_property(name: string | null, value: string | null): Enumerator
663
+ /**
664
+ * All returned devices will match the given `subsystem`.
665
+ * @param subsystem Wildcard for subsystem name e.g. 'scsi' or 'a*'.
666
+ * @returns The passed in @enumerator.
667
+ */
668
+ add_match_subsystem(subsystem: string | null): Enumerator
669
+ /**
670
+ * All returned devices will have a sysfs attribute matching the given `name` and `value`.
671
+ * @param name Wildcard filter for sysfs attribute key.
672
+ * @param value Wildcard filter for sysfs attribute value.
673
+ * @returns The passed in @enumerator.
674
+ */
675
+ add_match_sysfs_attr(name: string | null, value: string | null): Enumerator
676
+ /**
677
+ * All returned devices will match the given `tag`.
678
+ * @param tag A udev tag e.g. "udev-acl".
679
+ * @returns The passed in @enumerator.
680
+ */
681
+ add_match_tag(tag: string | null): Enumerator
682
+ /**
683
+ * All returned devices will not match the given `subsystem`.
684
+ * @param subsystem Wildcard for subsystem name e.g. 'scsi' or 'a*'.
685
+ * @returns The passed in @enumerator.
686
+ */
687
+ add_nomatch_subsystem(subsystem: string | null): Enumerator
688
+ /**
689
+ * All returned devices will not have a sysfs attribute matching the given `name` and `value`.
690
+ * @param name Wildcard filter for sysfs attribute key.
691
+ * @param value Wildcard filter for sysfs attribute value.
692
+ * @returns The passed in @enumerator.
693
+ */
694
+ add_nomatch_sysfs_attr(name: string | null, value: string | null): Enumerator
695
+ /**
696
+ * Add a device to the list of devices, to retrieve it back sorted in dependency order.
697
+ * @param sysfs_path A sysfs path, e.g. "/sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda"
698
+ * @returns The passed in @enumerator.
699
+ */
700
+ add_sysfs_path(sysfs_path: string | null): Enumerator
701
+ /**
702
+ * Executes the query in `enumerator`.
703
+ * @returns A list of #GUdevDevice objects. The caller should free the result by using g_object_unref() on each element in the list and then g_list_free() on the list.
704
+ */
705
+ execute(): Device[]
706
+
707
+ // Class property signals of GUdev-1.0.GUdev.Enumerator
708
+
709
+ connect(sigName: "notify::client", callback: (($obj: Enumerator, pspec: GObject.ParamSpec) => void)): number
710
+ connect_after(sigName: "notify::client", callback: (($obj: Enumerator, pspec: GObject.ParamSpec) => void)): number
711
+ emit(sigName: "notify::client", ...args: any[]): void
712
+ connect(sigName: string, callback: (...args: any[]) => void): number
713
+ connect_after(sigName: string, callback: (...args: any[]) => void): number
714
+ emit(sigName: string, ...args: any[]): void
715
+ disconnect(id: number): void
716
+ }
717
+
718
+ /**
719
+ * #GUdevEnumerator is used to lookup and sort devices.
720
+ * @class
721
+ */
722
+ class Enumerator extends GObject.Object {
723
+
724
+ // Own properties of GUdev-1.0.GUdev.Enumerator
725
+
726
+ static name: string
727
+ static $gtype: GObject.GType<Enumerator>
728
+
729
+ // Constructors of GUdev-1.0.GUdev.Enumerator
730
+
731
+ constructor(config?: Enumerator.ConstructorProperties)
732
+ /**
733
+ * Constructs a #GUdevEnumerator object that can be used to enumerate
734
+ * and sort devices. Use the add_match_*() and add_nomatch_*() methods
735
+ * and execute the query to get a list of devices with
736
+ * g_udev_enumerator_execute().
737
+ * @constructor
738
+ * @param client A #GUdevClient to enumerate devices from.
739
+ * @returns A new #GUdevEnumerator object. Free with g_object_unref().
740
+ */
741
+ constructor(client: Client)
742
+ /**
743
+ * Constructs a #GUdevEnumerator object that can be used to enumerate
744
+ * and sort devices. Use the add_match_*() and add_nomatch_*() methods
745
+ * and execute the query to get a list of devices with
746
+ * g_udev_enumerator_execute().
747
+ * @constructor
748
+ * @param client A #GUdevClient to enumerate devices from.
749
+ * @returns A new #GUdevEnumerator object. Free with g_object_unref().
750
+ */
751
+ static new(client: Client): Enumerator
752
+ _init(config?: Enumerator.ConstructorProperties): void
753
+ }
754
+
755
+ interface ClientClass {
756
+
757
+ // Own fields of GUdev-1.0.GUdev.ClientClass
758
+
759
+ /**
760
+ * Parent class.
761
+ * @field
762
+ */
763
+ parent_class: GObject.ObjectClass
764
+ uevent: (client: Client, action: string | null, device: Device) => void
765
+ reserved1: () => void
766
+ reserved2: () => void
767
+ reserved3: () => void
768
+ reserved4: () => void
769
+ reserved5: () => void
770
+ reserved6: () => void
771
+ reserved7: () => void
772
+ reserved8: () => void
773
+ }
774
+
775
+ /**
776
+ * Class structure for #GUdevClient.
777
+ * @record
778
+ */
779
+ abstract class ClientClass {
780
+
781
+ // Own properties of GUdev-1.0.GUdev.ClientClass
782
+
783
+ static name: string
784
+ }
785
+
786
+ interface ClientPrivate {
787
+ }
788
+
789
+ class ClientPrivate {
790
+
791
+ // Own properties of GUdev-1.0.GUdev.ClientPrivate
792
+
793
+ static name: string
794
+ }
795
+
796
+ interface DeviceClass {
797
+
798
+ // Own fields of GUdev-1.0.GUdev.DeviceClass
799
+
800
+ /**
801
+ * Parent class.
802
+ * @field
803
+ */
804
+ parent_class: GObject.ObjectClass
805
+ reserved1: () => void
806
+ reserved2: () => void
807
+ reserved3: () => void
808
+ reserved4: () => void
809
+ reserved5: () => void
810
+ reserved6: () => void
811
+ reserved7: () => void
812
+ reserved8: () => void
813
+ }
814
+
815
+ /**
816
+ * Class structure for #GUdevDevice.
817
+ * @record
818
+ */
819
+ abstract class DeviceClass {
820
+
821
+ // Own properties of GUdev-1.0.GUdev.DeviceClass
822
+
823
+ static name: string
824
+ }
825
+
826
+ interface DevicePrivate {
827
+ }
828
+
829
+ class DevicePrivate {
830
+
831
+ // Own properties of GUdev-1.0.GUdev.DevicePrivate
832
+
833
+ static name: string
834
+ }
835
+
836
+ interface EnumeratorClass {
837
+
838
+ // Own fields of GUdev-1.0.GUdev.EnumeratorClass
839
+
840
+ /**
841
+ * Parent class.
842
+ * @field
843
+ */
844
+ parent_class: GObject.ObjectClass
845
+ reserved1: () => void
846
+ reserved2: () => void
847
+ reserved3: () => void
848
+ reserved4: () => void
849
+ reserved5: () => void
850
+ reserved6: () => void
851
+ reserved7: () => void
852
+ reserved8: () => void
853
+ }
854
+
855
+ /**
856
+ * Class structure for #GUdevEnumerator.
857
+ * @record
858
+ */
859
+ abstract class EnumeratorClass {
860
+
861
+ // Own properties of GUdev-1.0.GUdev.EnumeratorClass
862
+
863
+ static name: string
864
+ }
865
+
866
+ interface EnumeratorPrivate {
867
+ }
868
+
869
+ class EnumeratorPrivate {
870
+
871
+ // Own properties of GUdev-1.0.GUdev.EnumeratorPrivate
872
+
873
+ static name: string
874
+ }
875
+
876
+ type DeviceNumber = number
877
+ /**
878
+ * Name of the imported GIR library
879
+ * @see https://gitlab.gnome.org/GNOME/gjs/-/blob/master/gi/ns.cpp#L188
880
+ */
881
+ const __name__: string
882
+ /**
883
+ * Version of the imported GIR library
884
+ * @see https://gitlab.gnome.org/GNOME/gjs/-/blob/master/gi/ns.cpp#L189
885
+ */
886
+ const __version__: string
887
+ }
888
+
889
+ export default GUdev;
890
+ // END