1 module libwasm.bindings.SpeechSynthesisUtterance;
2 
3 import libwasm.types;
4 
5 import memutils.ct: tuple;
6 import libwasm.bindings.EventHandler;
7 import libwasm.bindings.EventTarget;
8 import libwasm.bindings.SpeechSynthesisVoice;
9 
10 @safe:
11 nothrow:
12 
13 struct SpeechSynthesisUtterance {
14   nothrow:
15   libwasm.bindings.EventTarget.EventTarget _parent;
16   alias _parent this;
17   this(Handle h) {
18     _parent = .EventTarget(h);
19   }
20   void text()(string text) {
21     Object_Call_string__void(this._parent, "text", text);
22   }
23   string text()() {
24     return Object_Getter__string(this._parent, "text");
25   }
26   void lang()(string lang) {
27     Object_Call_string__void(this._parent, "lang", lang);
28   }
29   string lang()() {
30     return Object_Getter__string(this._parent, "lang");
31   }
32   void voice(T0)(scope auto ref Optional!(T0) voice) if (isTOrPointer!(T0, SpeechSynthesisVoice)) {
33     Serialize_Object_VarArgCall!void(this._parent, "voice", "Optional!Handle", tuple(!voice.empty, cast(Handle)voice.front.handle));
34   }
35   auto voice()() {
36     return recastOpt!(SpeechSynthesisVoice)(Object_Getter__OptionalHandle(this._parent, "voice"));
37   }
38   void volume()(float volume) {
39     Object_Call_float__void(this._parent, "volume", volume);
40   }
41   float volume()() {
42     return Object_Getter__float(this._parent, "volume");
43   }
44   void rate()(float rate) {
45     Object_Call_float__void(this._parent, "rate", rate);
46   }
47   float rate()() {
48     return Object_Getter__float(this._parent, "rate");
49   }
50   void pitch()(float pitch) {
51     Object_Call_float__void(this._parent, "pitch", pitch);
52   }
53   float pitch()() {
54     return Object_Getter__float(this._parent, "pitch");
55   }
56   void onstart(T0)(scope auto ref Optional!(T0) onstart) if (isTOrPointer!(T0, EventHandlerNonNull)) {
57     Object_Call_EventHandler__void(this._parent, "onstart", !onstart.empty, onstart.front);
58   }
59   EventHandler onstart()() {
60     return Object_Getter__EventHandler(this._parent, "onstart");
61   }
62   void onend(T0)(scope auto ref Optional!(T0) onend) if (isTOrPointer!(T0, EventHandlerNonNull)) {
63     Object_Call_EventHandler__void(this._parent, "onend", !onend.empty, onend.front);
64   }
65   EventHandler onend()() {
66     return Object_Getter__EventHandler(this._parent, "onend");
67   }
68   void onerror(T0)(scope auto ref Optional!(T0) onerror) if (isTOrPointer!(T0, EventHandlerNonNull)) {
69     Object_Call_EventHandler__void(this._parent, "onerror", !onerror.empty, onerror.front);
70   }
71   EventHandler onerror()() {
72     return Object_Getter__EventHandler(this._parent, "onerror");
73   }
74   void onpause(T0)(scope auto ref Optional!(T0) onpause) if (isTOrPointer!(T0, EventHandlerNonNull)) {
75     Object_Call_EventHandler__void(this._parent, "onpause", !onpause.empty, onpause.front);
76   }
77   EventHandler onpause()() {
78     return Object_Getter__EventHandler(this._parent, "onpause");
79   }
80   void onresume(T0)(scope auto ref Optional!(T0) onresume) if (isTOrPointer!(T0, EventHandlerNonNull)) {
81     Object_Call_EventHandler__void(this._parent, "onresume", !onresume.empty, onresume.front);
82   }
83   EventHandler onresume()() {
84     return Object_Getter__EventHandler(this._parent, "onresume");
85   }
86   void onmark(T0)(scope auto ref Optional!(T0) onmark) if (isTOrPointer!(T0, EventHandlerNonNull)) {
87     Object_Call_EventHandler__void(this._parent, "onmark", !onmark.empty, onmark.front);
88   }
89   EventHandler onmark()() {
90     return Object_Getter__EventHandler(this._parent, "onmark");
91   }
92   void onboundary(T0)(scope auto ref Optional!(T0) onboundary) if (isTOrPointer!(T0, EventHandlerNonNull)) {
93     Object_Call_EventHandler__void(this._parent, "onboundary", !onboundary.empty, onboundary.front);
94   }
95   EventHandler onboundary()() {
96     return Object_Getter__EventHandler(this._parent, "onboundary");
97   }
98   string chosenVoiceURI()() {
99     return Object_Getter__string(this._parent, "chosenVoiceURI");
100   }
101 }
102 
103