webview2/
interfaces.rs

1// Generated by idl2rs.
2
3/// Wrapper for `ICoreWebView2`.
4#[derive(Clone)]
5pub struct WebView {
6    inner: ComRc<dyn ICoreWebView2>,
7}
8impl From<ComRc<dyn ICoreWebView2>> for WebView {
9    fn from(inner: ComRc<dyn ICoreWebView2>) -> Self {
10        Self { inner }
11    }
12}
13impl fmt::Debug for WebView {
14    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
15        f.debug_struct("WebView").finish()
16    }
17}
18impl WebView {
19    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2> {
20        self.inner
21    }
22    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2> {
23        &self.inner
24    }
25}
26
27/// Wrapper for `ICoreWebView2_2`.
28#[derive(Clone)]
29pub struct WebView_2 {
30    inner: ComRc<dyn ICoreWebView2_2>,
31}
32impl From<ComRc<dyn ICoreWebView2_2>> for WebView_2 {
33    fn from(inner: ComRc<dyn ICoreWebView2_2>) -> Self {
34        Self { inner }
35    }
36}
37impl fmt::Debug for WebView_2 {
38    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
39        f.debug_struct("WebView_2").finish()
40    }
41}
42impl WebView_2 {
43    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2_2> {
44        self.inner
45    }
46    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2_2> {
47        &self.inner
48    }
49}
50
51/// Wrapper for `ICoreWebView2_3`.
52#[derive(Clone)]
53pub struct WebView_3 {
54    inner: ComRc<dyn ICoreWebView2_3>,
55}
56impl From<ComRc<dyn ICoreWebView2_3>> for WebView_3 {
57    fn from(inner: ComRc<dyn ICoreWebView2_3>) -> Self {
58        Self { inner }
59    }
60}
61impl fmt::Debug for WebView_3 {
62    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
63        f.debug_struct("WebView_3").finish()
64    }
65}
66impl WebView_3 {
67    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2_3> {
68        self.inner
69    }
70    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2_3> {
71        &self.inner
72    }
73}
74
75/// Wrapper for `ICoreWebView2Controller`.
76#[derive(Clone)]
77pub struct Controller {
78    inner: ComRc<dyn ICoreWebView2Controller>,
79}
80impl From<ComRc<dyn ICoreWebView2Controller>> for Controller {
81    fn from(inner: ComRc<dyn ICoreWebView2Controller>) -> Self {
82        Self { inner }
83    }
84}
85impl fmt::Debug for Controller {
86    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
87        f.debug_struct("Controller").finish()
88    }
89}
90impl Controller {
91    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2Controller> {
92        self.inner
93    }
94    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2Controller> {
95        &self.inner
96    }
97}
98
99/// Wrapper for `ICoreWebView2Controller2`.
100#[derive(Clone)]
101pub struct Controller2 {
102    inner: ComRc<dyn ICoreWebView2Controller2>,
103}
104impl From<ComRc<dyn ICoreWebView2Controller2>> for Controller2 {
105    fn from(inner: ComRc<dyn ICoreWebView2Controller2>) -> Self {
106        Self { inner }
107    }
108}
109impl fmt::Debug for Controller2 {
110    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
111        f.debug_struct("Controller2").finish()
112    }
113}
114impl Controller2 {
115    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2Controller2> {
116        self.inner
117    }
118    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2Controller2> {
119        &self.inner
120    }
121}
122
123/// Wrapper for `ICoreWebView2Controller3`.
124#[derive(Clone)]
125pub struct Controller3 {
126    inner: ComRc<dyn ICoreWebView2Controller3>,
127}
128impl From<ComRc<dyn ICoreWebView2Controller3>> for Controller3 {
129    fn from(inner: ComRc<dyn ICoreWebView2Controller3>) -> Self {
130        Self { inner }
131    }
132}
133impl fmt::Debug for Controller3 {
134    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
135        f.debug_struct("Controller3").finish()
136    }
137}
138impl Controller3 {
139    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2Controller3> {
140        self.inner
141    }
142    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2Controller3> {
143        &self.inner
144    }
145}
146
147/// Wrapper for `ICoreWebView2CompositionController`.
148#[derive(Clone)]
149pub struct CompositionController {
150    inner: ComRc<dyn ICoreWebView2CompositionController>,
151}
152impl From<ComRc<dyn ICoreWebView2CompositionController>> for CompositionController {
153    fn from(inner: ComRc<dyn ICoreWebView2CompositionController>) -> Self {
154        Self { inner }
155    }
156}
157impl fmt::Debug for CompositionController {
158    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
159        f.debug_struct("CompositionController").finish()
160    }
161}
162impl CompositionController {
163    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2CompositionController> {
164        self.inner
165    }
166    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2CompositionController> {
167        &self.inner
168    }
169}
170
171/// Wrapper for `ICoreWebView2CompositionController2`.
172#[derive(Clone)]
173pub struct CompositionController2 {
174    inner: ComRc<dyn ICoreWebView2CompositionController2>,
175}
176impl From<ComRc<dyn ICoreWebView2CompositionController2>> for CompositionController2 {
177    fn from(inner: ComRc<dyn ICoreWebView2CompositionController2>) -> Self {
178        Self { inner }
179    }
180}
181impl fmt::Debug for CompositionController2 {
182    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
183        f.debug_struct("CompositionController2").finish()
184    }
185}
186impl CompositionController2 {
187    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2CompositionController2> {
188        self.inner
189    }
190    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2CompositionController2> {
191        &self.inner
192    }
193}
194
195/// Wrapper for `ICoreWebView2Deferral`.
196#[derive(Clone)]
197pub struct Deferral {
198    inner: ComRc<dyn ICoreWebView2Deferral>,
199}
200impl From<ComRc<dyn ICoreWebView2Deferral>> for Deferral {
201    fn from(inner: ComRc<dyn ICoreWebView2Deferral>) -> Self {
202        Self { inner }
203    }
204}
205impl fmt::Debug for Deferral {
206    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
207        f.debug_struct("Deferral").finish()
208    }
209}
210impl Deferral {
211    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2Deferral> {
212        self.inner
213    }
214    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2Deferral> {
215        &self.inner
216    }
217}
218
219/// Wrapper for `ICoreWebView2Settings`.
220#[derive(Clone)]
221pub struct Settings {
222    inner: ComRc<dyn ICoreWebView2Settings>,
223}
224impl From<ComRc<dyn ICoreWebView2Settings>> for Settings {
225    fn from(inner: ComRc<dyn ICoreWebView2Settings>) -> Self {
226        Self { inner }
227    }
228}
229impl fmt::Debug for Settings {
230    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
231        f.debug_struct("Settings").finish()
232    }
233}
234impl Settings {
235    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2Settings> {
236        self.inner
237    }
238    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2Settings> {
239        &self.inner
240    }
241}
242
243/// Wrapper for `ICoreWebView2ProcessFailedEventArgs`.
244#[derive(Clone)]
245pub struct ProcessFailedEventArgs {
246    inner: ComRc<dyn ICoreWebView2ProcessFailedEventArgs>,
247}
248impl From<ComRc<dyn ICoreWebView2ProcessFailedEventArgs>> for ProcessFailedEventArgs {
249    fn from(inner: ComRc<dyn ICoreWebView2ProcessFailedEventArgs>) -> Self {
250        Self { inner }
251    }
252}
253impl fmt::Debug for ProcessFailedEventArgs {
254    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
255        f.debug_struct("ProcessFailedEventArgs").finish()
256    }
257}
258impl ProcessFailedEventArgs {
259    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2ProcessFailedEventArgs> {
260        self.inner
261    }
262    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2ProcessFailedEventArgs> {
263        &self.inner
264    }
265}
266
267/// Wrapper for `ICoreWebView2HttpHeadersCollectionIterator`.
268#[derive(Clone)]
269pub struct HttpHeadersCollectionIterator {
270    inner: ComRc<dyn ICoreWebView2HttpHeadersCollectionIterator>,
271}
272impl From<ComRc<dyn ICoreWebView2HttpHeadersCollectionIterator>> for HttpHeadersCollectionIterator {
273    fn from(inner: ComRc<dyn ICoreWebView2HttpHeadersCollectionIterator>) -> Self {
274        Self { inner }
275    }
276}
277impl fmt::Debug for HttpHeadersCollectionIterator {
278    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
279        f.debug_struct("HttpHeadersCollectionIterator").finish()
280    }
281}
282impl HttpHeadersCollectionIterator {
283    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2HttpHeadersCollectionIterator> {
284        self.inner
285    }
286    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2HttpHeadersCollectionIterator> {
287        &self.inner
288    }
289}
290
291/// Wrapper for `ICoreWebView2HttpRequestHeaders`.
292#[derive(Clone)]
293pub struct HttpRequestHeaders {
294    inner: ComRc<dyn ICoreWebView2HttpRequestHeaders>,
295}
296impl From<ComRc<dyn ICoreWebView2HttpRequestHeaders>> for HttpRequestHeaders {
297    fn from(inner: ComRc<dyn ICoreWebView2HttpRequestHeaders>) -> Self {
298        Self { inner }
299    }
300}
301impl fmt::Debug for HttpRequestHeaders {
302    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
303        f.debug_struct("HttpRequestHeaders").finish()
304    }
305}
306impl HttpRequestHeaders {
307    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2HttpRequestHeaders> {
308        self.inner
309    }
310    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2HttpRequestHeaders> {
311        &self.inner
312    }
313}
314
315/// Wrapper for `ICoreWebView2HttpResponseHeaders`.
316#[derive(Clone)]
317pub struct HttpResponseHeaders {
318    inner: ComRc<dyn ICoreWebView2HttpResponseHeaders>,
319}
320impl From<ComRc<dyn ICoreWebView2HttpResponseHeaders>> for HttpResponseHeaders {
321    fn from(inner: ComRc<dyn ICoreWebView2HttpResponseHeaders>) -> Self {
322        Self { inner }
323    }
324}
325impl fmt::Debug for HttpResponseHeaders {
326    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
327        f.debug_struct("HttpResponseHeaders").finish()
328    }
329}
330impl HttpResponseHeaders {
331    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2HttpResponseHeaders> {
332        self.inner
333    }
334    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2HttpResponseHeaders> {
335        &self.inner
336    }
337}
338
339/// Wrapper for `ICoreWebView2WebResourceRequest`.
340#[derive(Clone)]
341pub struct WebResourceRequest {
342    inner: ComRc<dyn ICoreWebView2WebResourceRequest>,
343}
344impl From<ComRc<dyn ICoreWebView2WebResourceRequest>> for WebResourceRequest {
345    fn from(inner: ComRc<dyn ICoreWebView2WebResourceRequest>) -> Self {
346        Self { inner }
347    }
348}
349impl fmt::Debug for WebResourceRequest {
350    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
351        f.debug_struct("WebResourceRequest").finish()
352    }
353}
354impl WebResourceRequest {
355    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2WebResourceRequest> {
356        self.inner
357    }
358    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2WebResourceRequest> {
359        &self.inner
360    }
361}
362
363/// Wrapper for `ICoreWebView2WebResourceResponse`.
364#[derive(Clone)]
365pub struct WebResourceResponse {
366    inner: ComRc<dyn ICoreWebView2WebResourceResponse>,
367}
368impl From<ComRc<dyn ICoreWebView2WebResourceResponse>> for WebResourceResponse {
369    fn from(inner: ComRc<dyn ICoreWebView2WebResourceResponse>) -> Self {
370        Self { inner }
371    }
372}
373impl fmt::Debug for WebResourceResponse {
374    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
375        f.debug_struct("WebResourceResponse").finish()
376    }
377}
378impl WebResourceResponse {
379    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2WebResourceResponse> {
380        self.inner
381    }
382    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2WebResourceResponse> {
383        &self.inner
384    }
385}
386
387/// Wrapper for `ICoreWebView2NavigationStartingEventArgs`.
388#[derive(Clone)]
389pub struct NavigationStartingEventArgs {
390    inner: ComRc<dyn ICoreWebView2NavigationStartingEventArgs>,
391}
392impl From<ComRc<dyn ICoreWebView2NavigationStartingEventArgs>> for NavigationStartingEventArgs {
393    fn from(inner: ComRc<dyn ICoreWebView2NavigationStartingEventArgs>) -> Self {
394        Self { inner }
395    }
396}
397impl fmt::Debug for NavigationStartingEventArgs {
398    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
399        f.debug_struct("NavigationStartingEventArgs").finish()
400    }
401}
402impl NavigationStartingEventArgs {
403    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2NavigationStartingEventArgs> {
404        self.inner
405    }
406    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2NavigationStartingEventArgs> {
407        &self.inner
408    }
409}
410
411/// Wrapper for `ICoreWebView2ContentLoadingEventArgs`.
412#[derive(Clone)]
413pub struct ContentLoadingEventArgs {
414    inner: ComRc<dyn ICoreWebView2ContentLoadingEventArgs>,
415}
416impl From<ComRc<dyn ICoreWebView2ContentLoadingEventArgs>> for ContentLoadingEventArgs {
417    fn from(inner: ComRc<dyn ICoreWebView2ContentLoadingEventArgs>) -> Self {
418        Self { inner }
419    }
420}
421impl fmt::Debug for ContentLoadingEventArgs {
422    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
423        f.debug_struct("ContentLoadingEventArgs").finish()
424    }
425}
426impl ContentLoadingEventArgs {
427    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2ContentLoadingEventArgs> {
428        self.inner
429    }
430    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2ContentLoadingEventArgs> {
431        &self.inner
432    }
433}
434
435/// Wrapper for `ICoreWebView2SourceChangedEventArgs`.
436#[derive(Clone)]
437pub struct SourceChangedEventArgs {
438    inner: ComRc<dyn ICoreWebView2SourceChangedEventArgs>,
439}
440impl From<ComRc<dyn ICoreWebView2SourceChangedEventArgs>> for SourceChangedEventArgs {
441    fn from(inner: ComRc<dyn ICoreWebView2SourceChangedEventArgs>) -> Self {
442        Self { inner }
443    }
444}
445impl fmt::Debug for SourceChangedEventArgs {
446    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
447        f.debug_struct("SourceChangedEventArgs").finish()
448    }
449}
450impl SourceChangedEventArgs {
451    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2SourceChangedEventArgs> {
452        self.inner
453    }
454    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2SourceChangedEventArgs> {
455        &self.inner
456    }
457}
458
459/// Wrapper for `ICoreWebView2ScriptDialogOpeningEventArgs`.
460#[derive(Clone)]
461pub struct ScriptDialogOpeningEventArgs {
462    inner: ComRc<dyn ICoreWebView2ScriptDialogOpeningEventArgs>,
463}
464impl From<ComRc<dyn ICoreWebView2ScriptDialogOpeningEventArgs>> for ScriptDialogOpeningEventArgs {
465    fn from(inner: ComRc<dyn ICoreWebView2ScriptDialogOpeningEventArgs>) -> Self {
466        Self { inner }
467    }
468}
469impl fmt::Debug for ScriptDialogOpeningEventArgs {
470    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
471        f.debug_struct("ScriptDialogOpeningEventArgs").finish()
472    }
473}
474impl ScriptDialogOpeningEventArgs {
475    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2ScriptDialogOpeningEventArgs> {
476        self.inner
477    }
478    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2ScriptDialogOpeningEventArgs> {
479        &self.inner
480    }
481}
482
483/// Wrapper for `ICoreWebView2NavigationCompletedEventArgs`.
484#[derive(Clone)]
485pub struct NavigationCompletedEventArgs {
486    inner: ComRc<dyn ICoreWebView2NavigationCompletedEventArgs>,
487}
488impl From<ComRc<dyn ICoreWebView2NavigationCompletedEventArgs>> for NavigationCompletedEventArgs {
489    fn from(inner: ComRc<dyn ICoreWebView2NavigationCompletedEventArgs>) -> Self {
490        Self { inner }
491    }
492}
493impl fmt::Debug for NavigationCompletedEventArgs {
494    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
495        f.debug_struct("NavigationCompletedEventArgs").finish()
496    }
497}
498impl NavigationCompletedEventArgs {
499    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2NavigationCompletedEventArgs> {
500        self.inner
501    }
502    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2NavigationCompletedEventArgs> {
503        &self.inner
504    }
505}
506
507/// Wrapper for `ICoreWebView2PermissionRequestedEventArgs`.
508#[derive(Clone)]
509pub struct PermissionRequestedEventArgs {
510    inner: ComRc<dyn ICoreWebView2PermissionRequestedEventArgs>,
511}
512impl From<ComRc<dyn ICoreWebView2PermissionRequestedEventArgs>> for PermissionRequestedEventArgs {
513    fn from(inner: ComRc<dyn ICoreWebView2PermissionRequestedEventArgs>) -> Self {
514        Self { inner }
515    }
516}
517impl fmt::Debug for PermissionRequestedEventArgs {
518    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
519        f.debug_struct("PermissionRequestedEventArgs").finish()
520    }
521}
522impl PermissionRequestedEventArgs {
523    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2PermissionRequestedEventArgs> {
524        self.inner
525    }
526    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2PermissionRequestedEventArgs> {
527        &self.inner
528    }
529}
530
531/// Wrapper for `ICoreWebView2WebResourceRequestedEventArgs`.
532#[derive(Clone)]
533pub struct WebResourceRequestedEventArgs {
534    inner: ComRc<dyn ICoreWebView2WebResourceRequestedEventArgs>,
535}
536impl From<ComRc<dyn ICoreWebView2WebResourceRequestedEventArgs>> for WebResourceRequestedEventArgs {
537    fn from(inner: ComRc<dyn ICoreWebView2WebResourceRequestedEventArgs>) -> Self {
538        Self { inner }
539    }
540}
541impl fmt::Debug for WebResourceRequestedEventArgs {
542    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
543        f.debug_struct("WebResourceRequestedEventArgs").finish()
544    }
545}
546impl WebResourceRequestedEventArgs {
547    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2WebResourceRequestedEventArgs> {
548        self.inner
549    }
550    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2WebResourceRequestedEventArgs> {
551        &self.inner
552    }
553}
554
555/// Wrapper for `ICoreWebView2MoveFocusRequestedEventArgs`.
556#[derive(Clone)]
557pub struct MoveFocusRequestedEventArgs {
558    inner: ComRc<dyn ICoreWebView2MoveFocusRequestedEventArgs>,
559}
560impl From<ComRc<dyn ICoreWebView2MoveFocusRequestedEventArgs>> for MoveFocusRequestedEventArgs {
561    fn from(inner: ComRc<dyn ICoreWebView2MoveFocusRequestedEventArgs>) -> Self {
562        Self { inner }
563    }
564}
565impl fmt::Debug for MoveFocusRequestedEventArgs {
566    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
567        f.debug_struct("MoveFocusRequestedEventArgs").finish()
568    }
569}
570impl MoveFocusRequestedEventArgs {
571    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2MoveFocusRequestedEventArgs> {
572        self.inner
573    }
574    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2MoveFocusRequestedEventArgs> {
575        &self.inner
576    }
577}
578
579/// Wrapper for `ICoreWebView2WebMessageReceivedEventArgs`.
580#[derive(Clone)]
581pub struct WebMessageReceivedEventArgs {
582    inner: ComRc<dyn ICoreWebView2WebMessageReceivedEventArgs>,
583}
584impl From<ComRc<dyn ICoreWebView2WebMessageReceivedEventArgs>> for WebMessageReceivedEventArgs {
585    fn from(inner: ComRc<dyn ICoreWebView2WebMessageReceivedEventArgs>) -> Self {
586        Self { inner }
587    }
588}
589impl fmt::Debug for WebMessageReceivedEventArgs {
590    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
591        f.debug_struct("WebMessageReceivedEventArgs").finish()
592    }
593}
594impl WebMessageReceivedEventArgs {
595    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2WebMessageReceivedEventArgs> {
596        self.inner
597    }
598    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2WebMessageReceivedEventArgs> {
599        &self.inner
600    }
601}
602
603/// Wrapper for `ICoreWebView2DevToolsProtocolEventReceivedEventArgs`.
604#[derive(Clone)]
605pub struct DevToolsProtocolEventReceivedEventArgs {
606    inner: ComRc<dyn ICoreWebView2DevToolsProtocolEventReceivedEventArgs>,
607}
608impl From<ComRc<dyn ICoreWebView2DevToolsProtocolEventReceivedEventArgs>>
609    for DevToolsProtocolEventReceivedEventArgs
610{
611    fn from(inner: ComRc<dyn ICoreWebView2DevToolsProtocolEventReceivedEventArgs>) -> Self {
612        Self { inner }
613    }
614}
615impl fmt::Debug for DevToolsProtocolEventReceivedEventArgs {
616    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
617        f.debug_struct("DevToolsProtocolEventReceivedEventArgs")
618            .finish()
619    }
620}
621impl DevToolsProtocolEventReceivedEventArgs {
622    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2DevToolsProtocolEventReceivedEventArgs> {
623        self.inner
624    }
625    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2DevToolsProtocolEventReceivedEventArgs> {
626        &self.inner
627    }
628}
629
630/// Wrapper for `ICoreWebView2NewWindowRequestedEventArgs`.
631#[derive(Clone)]
632pub struct NewWindowRequestedEventArgs {
633    inner: ComRc<dyn ICoreWebView2NewWindowRequestedEventArgs>,
634}
635impl From<ComRc<dyn ICoreWebView2NewWindowRequestedEventArgs>> for NewWindowRequestedEventArgs {
636    fn from(inner: ComRc<dyn ICoreWebView2NewWindowRequestedEventArgs>) -> Self {
637        Self { inner }
638    }
639}
640impl fmt::Debug for NewWindowRequestedEventArgs {
641    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
642        f.debug_struct("NewWindowRequestedEventArgs").finish()
643    }
644}
645impl NewWindowRequestedEventArgs {
646    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2NewWindowRequestedEventArgs> {
647        self.inner
648    }
649    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2NewWindowRequestedEventArgs> {
650        &self.inner
651    }
652}
653
654/// Wrapper for `ICoreWebView2WindowFeatures`.
655#[derive(Clone)]
656pub struct WindowFeatures {
657    inner: ComRc<dyn ICoreWebView2WindowFeatures>,
658}
659impl From<ComRc<dyn ICoreWebView2WindowFeatures>> for WindowFeatures {
660    fn from(inner: ComRc<dyn ICoreWebView2WindowFeatures>) -> Self {
661        Self { inner }
662    }
663}
664impl fmt::Debug for WindowFeatures {
665    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
666        f.debug_struct("WindowFeatures").finish()
667    }
668}
669impl WindowFeatures {
670    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2WindowFeatures> {
671        self.inner
672    }
673    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2WindowFeatures> {
674        &self.inner
675    }
676}
677
678/// Wrapper for `ICoreWebView2AcceleratorKeyPressedEventArgs`.
679#[derive(Clone)]
680pub struct AcceleratorKeyPressedEventArgs {
681    inner: ComRc<dyn ICoreWebView2AcceleratorKeyPressedEventArgs>,
682}
683impl From<ComRc<dyn ICoreWebView2AcceleratorKeyPressedEventArgs>>
684    for AcceleratorKeyPressedEventArgs
685{
686    fn from(inner: ComRc<dyn ICoreWebView2AcceleratorKeyPressedEventArgs>) -> Self {
687        Self { inner }
688    }
689}
690impl fmt::Debug for AcceleratorKeyPressedEventArgs {
691    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
692        f.debug_struct("AcceleratorKeyPressedEventArgs").finish()
693    }
694}
695impl AcceleratorKeyPressedEventArgs {
696    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2AcceleratorKeyPressedEventArgs> {
697        self.inner
698    }
699    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2AcceleratorKeyPressedEventArgs> {
700        &self.inner
701    }
702}
703
704/// Wrapper for `ICoreWebView2WebResourceResponseReceivedEventArgs`.
705#[derive(Clone)]
706pub struct WebResourceResponseReceivedEventArgs {
707    inner: ComRc<dyn ICoreWebView2WebResourceResponseReceivedEventArgs>,
708}
709impl From<ComRc<dyn ICoreWebView2WebResourceResponseReceivedEventArgs>>
710    for WebResourceResponseReceivedEventArgs
711{
712    fn from(inner: ComRc<dyn ICoreWebView2WebResourceResponseReceivedEventArgs>) -> Self {
713        Self { inner }
714    }
715}
716impl fmt::Debug for WebResourceResponseReceivedEventArgs {
717    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
718        f.debug_struct("WebResourceResponseReceivedEventArgs")
719            .finish()
720    }
721}
722impl WebResourceResponseReceivedEventArgs {
723    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2WebResourceResponseReceivedEventArgs> {
724        self.inner
725    }
726    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2WebResourceResponseReceivedEventArgs> {
727        &self.inner
728    }
729}
730
731/// Wrapper for `ICoreWebView2WebResourceResponseView`.
732#[derive(Clone)]
733pub struct WebResourceResponseView {
734    inner: ComRc<dyn ICoreWebView2WebResourceResponseView>,
735}
736impl From<ComRc<dyn ICoreWebView2WebResourceResponseView>> for WebResourceResponseView {
737    fn from(inner: ComRc<dyn ICoreWebView2WebResourceResponseView>) -> Self {
738        Self { inner }
739    }
740}
741impl fmt::Debug for WebResourceResponseView {
742    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
743        f.debug_struct("WebResourceResponseView").finish()
744    }
745}
746impl WebResourceResponseView {
747    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2WebResourceResponseView> {
748        self.inner
749    }
750    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2WebResourceResponseView> {
751        &self.inner
752    }
753}
754
755/// Wrapper for `ICoreWebView2DOMContentLoadedEventArgs`.
756#[derive(Clone)]
757pub struct DOMContentLoadedEventArgs {
758    inner: ComRc<dyn ICoreWebView2DOMContentLoadedEventArgs>,
759}
760impl From<ComRc<dyn ICoreWebView2DOMContentLoadedEventArgs>> for DOMContentLoadedEventArgs {
761    fn from(inner: ComRc<dyn ICoreWebView2DOMContentLoadedEventArgs>) -> Self {
762        Self { inner }
763    }
764}
765impl fmt::Debug for DOMContentLoadedEventArgs {
766    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
767        f.debug_struct("DOMContentLoadedEventArgs").finish()
768    }
769}
770impl DOMContentLoadedEventArgs {
771    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2DOMContentLoadedEventArgs> {
772        self.inner
773    }
774    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2DOMContentLoadedEventArgs> {
775        &self.inner
776    }
777}
778
779/// Wrapper for `ICoreWebView2Cookie`.
780#[derive(Clone)]
781pub struct Cookie {
782    inner: ComRc<dyn ICoreWebView2Cookie>,
783}
784impl From<ComRc<dyn ICoreWebView2Cookie>> for Cookie {
785    fn from(inner: ComRc<dyn ICoreWebView2Cookie>) -> Self {
786        Self { inner }
787    }
788}
789impl fmt::Debug for Cookie {
790    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
791        f.debug_struct("Cookie").finish()
792    }
793}
794impl Cookie {
795    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2Cookie> {
796        self.inner
797    }
798    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2Cookie> {
799        &self.inner
800    }
801}
802
803/// Wrapper for `ICoreWebView2CookieManager`.
804#[derive(Clone)]
805pub struct CookieManager {
806    inner: ComRc<dyn ICoreWebView2CookieManager>,
807}
808impl From<ComRc<dyn ICoreWebView2CookieManager>> for CookieManager {
809    fn from(inner: ComRc<dyn ICoreWebView2CookieManager>) -> Self {
810        Self { inner }
811    }
812}
813impl fmt::Debug for CookieManager {
814    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
815        f.debug_struct("CookieManager").finish()
816    }
817}
818impl CookieManager {
819    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2CookieManager> {
820        self.inner
821    }
822    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2CookieManager> {
823        &self.inner
824    }
825}
826
827/// Wrapper for `ICoreWebView2CookieList`.
828#[derive(Clone)]
829pub struct CookieList {
830    inner: ComRc<dyn ICoreWebView2CookieList>,
831}
832impl From<ComRc<dyn ICoreWebView2CookieList>> for CookieList {
833    fn from(inner: ComRc<dyn ICoreWebView2CookieList>) -> Self {
834        Self { inner }
835    }
836}
837impl fmt::Debug for CookieList {
838    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
839        f.debug_struct("CookieList").finish()
840    }
841}
842impl CookieList {
843    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2CookieList> {
844        self.inner
845    }
846    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2CookieList> {
847        &self.inner
848    }
849}
850
851/// Wrapper for `ICoreWebView2PointerInfo`.
852#[derive(Clone)]
853pub struct PointerInfo {
854    inner: ComRc<dyn ICoreWebView2PointerInfo>,
855}
856impl From<ComRc<dyn ICoreWebView2PointerInfo>> for PointerInfo {
857    fn from(inner: ComRc<dyn ICoreWebView2PointerInfo>) -> Self {
858        Self { inner }
859    }
860}
861impl fmt::Debug for PointerInfo {
862    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
863        f.debug_struct("PointerInfo").finish()
864    }
865}
866impl PointerInfo {
867    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2PointerInfo> {
868        self.inner
869    }
870    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2PointerInfo> {
871        &self.inner
872    }
873}
874
875/// Wrapper for `ICoreWebView2Environment`.
876#[derive(Clone)]
877pub struct Environment {
878    inner: ComRc<dyn ICoreWebView2Environment>,
879}
880impl From<ComRc<dyn ICoreWebView2Environment>> for Environment {
881    fn from(inner: ComRc<dyn ICoreWebView2Environment>) -> Self {
882        Self { inner }
883    }
884}
885impl fmt::Debug for Environment {
886    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
887        f.debug_struct("Environment").finish()
888    }
889}
890impl Environment {
891    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2Environment> {
892        self.inner
893    }
894    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2Environment> {
895        &self.inner
896    }
897}
898
899/// Wrapper for `ICoreWebView2Environment2`.
900#[derive(Clone)]
901pub struct Environment2 {
902    inner: ComRc<dyn ICoreWebView2Environment2>,
903}
904impl From<ComRc<dyn ICoreWebView2Environment2>> for Environment2 {
905    fn from(inner: ComRc<dyn ICoreWebView2Environment2>) -> Self {
906        Self { inner }
907    }
908}
909impl fmt::Debug for Environment2 {
910    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
911        f.debug_struct("Environment2").finish()
912    }
913}
914impl Environment2 {
915    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2Environment2> {
916        self.inner
917    }
918    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2Environment2> {
919        &self.inner
920    }
921}
922
923/// Wrapper for `ICoreWebView2Environment3`.
924#[derive(Clone)]
925pub struct Environment3 {
926    inner: ComRc<dyn ICoreWebView2Environment3>,
927}
928impl From<ComRc<dyn ICoreWebView2Environment3>> for Environment3 {
929    fn from(inner: ComRc<dyn ICoreWebView2Environment3>) -> Self {
930        Self { inner }
931    }
932}
933impl fmt::Debug for Environment3 {
934    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
935        f.debug_struct("Environment3").finish()
936    }
937}
938impl Environment3 {
939    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2Environment3> {
940        self.inner
941    }
942    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2Environment3> {
943        &self.inner
944    }
945}
946
947/// Wrapper for `ICoreWebView2Environment4`.
948#[derive(Clone)]
949pub struct Environment4 {
950    inner: ComRc<dyn ICoreWebView2Environment4>,
951}
952impl From<ComRc<dyn ICoreWebView2Environment4>> for Environment4 {
953    fn from(inner: ComRc<dyn ICoreWebView2Environment4>) -> Self {
954        Self { inner }
955    }
956}
957impl fmt::Debug for Environment4 {
958    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
959        f.debug_struct("Environment4").finish()
960    }
961}
962impl Environment4 {
963    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2Environment4> {
964        self.inner
965    }
966    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2Environment4> {
967        &self.inner
968    }
969}
970
971/// Wrapper for `ICoreWebView2EnvironmentOptions`.
972#[derive(Clone)]
973pub struct EnvironmentOptions {
974    inner: ComRc<dyn ICoreWebView2EnvironmentOptions>,
975}
976impl From<ComRc<dyn ICoreWebView2EnvironmentOptions>> for EnvironmentOptions {
977    fn from(inner: ComRc<dyn ICoreWebView2EnvironmentOptions>) -> Self {
978        Self { inner }
979    }
980}
981impl fmt::Debug for EnvironmentOptions {
982    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
983        f.debug_struct("EnvironmentOptions").finish()
984    }
985}
986impl EnvironmentOptions {
987    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2EnvironmentOptions> {
988        self.inner
989    }
990    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2EnvironmentOptions> {
991        &self.inner
992    }
993}
994
995/// Wrapper for `ICoreWebView2DevToolsProtocolEventReceiver`.
996#[derive(Clone)]
997pub struct DevToolsProtocolEventReceiver {
998    inner: ComRc<dyn ICoreWebView2DevToolsProtocolEventReceiver>,
999}
1000impl From<ComRc<dyn ICoreWebView2DevToolsProtocolEventReceiver>> for DevToolsProtocolEventReceiver {
1001    fn from(inner: ComRc<dyn ICoreWebView2DevToolsProtocolEventReceiver>) -> Self {
1002        Self { inner }
1003    }
1004}
1005impl fmt::Debug for DevToolsProtocolEventReceiver {
1006    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
1007        f.debug_struct("DevToolsProtocolEventReceiver").finish()
1008    }
1009}
1010impl DevToolsProtocolEventReceiver {
1011    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2DevToolsProtocolEventReceiver> {
1012        self.inner
1013    }
1014    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2DevToolsProtocolEventReceiver> {
1015        &self.inner
1016    }
1017}
1018
1019/// Wrapper for `ICoreWebView2ProcessFailedEventArgs2`.
1020#[derive(Clone)]
1021pub struct ProcessFailedEventArgs2 {
1022    inner: ComRc<dyn ICoreWebView2ProcessFailedEventArgs2>,
1023}
1024impl From<ComRc<dyn ICoreWebView2ProcessFailedEventArgs2>> for ProcessFailedEventArgs2 {
1025    fn from(inner: ComRc<dyn ICoreWebView2ProcessFailedEventArgs2>) -> Self {
1026        Self { inner }
1027    }
1028}
1029impl fmt::Debug for ProcessFailedEventArgs2 {
1030    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
1031        f.debug_struct("ProcessFailedEventArgs2").finish()
1032    }
1033}
1034impl ProcessFailedEventArgs2 {
1035    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2ProcessFailedEventArgs2> {
1036        self.inner
1037    }
1038    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2ProcessFailedEventArgs2> {
1039        &self.inner
1040    }
1041}
1042
1043/// Wrapper for `ICoreWebView2FrameInfoCollection`.
1044#[derive(Clone)]
1045pub struct FrameInfoCollection {
1046    inner: ComRc<dyn ICoreWebView2FrameInfoCollection>,
1047}
1048impl From<ComRc<dyn ICoreWebView2FrameInfoCollection>> for FrameInfoCollection {
1049    fn from(inner: ComRc<dyn ICoreWebView2FrameInfoCollection>) -> Self {
1050        Self { inner }
1051    }
1052}
1053impl fmt::Debug for FrameInfoCollection {
1054    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
1055        f.debug_struct("FrameInfoCollection").finish()
1056    }
1057}
1058impl FrameInfoCollection {
1059    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2FrameInfoCollection> {
1060        self.inner
1061    }
1062    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2FrameInfoCollection> {
1063        &self.inner
1064    }
1065}
1066
1067/// Wrapper for `ICoreWebView2FrameInfoCollectionIterator`.
1068#[derive(Clone)]
1069pub struct FrameInfoCollectionIterator {
1070    inner: ComRc<dyn ICoreWebView2FrameInfoCollectionIterator>,
1071}
1072impl From<ComRc<dyn ICoreWebView2FrameInfoCollectionIterator>> for FrameInfoCollectionIterator {
1073    fn from(inner: ComRc<dyn ICoreWebView2FrameInfoCollectionIterator>) -> Self {
1074        Self { inner }
1075    }
1076}
1077impl fmt::Debug for FrameInfoCollectionIterator {
1078    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
1079        f.debug_struct("FrameInfoCollectionIterator").finish()
1080    }
1081}
1082impl FrameInfoCollectionIterator {
1083    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2FrameInfoCollectionIterator> {
1084        self.inner
1085    }
1086    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2FrameInfoCollectionIterator> {
1087        &self.inner
1088    }
1089}
1090
1091/// Wrapper for `ICoreWebView2FrameInfo`.
1092#[derive(Clone)]
1093pub struct FrameInfo {
1094    inner: ComRc<dyn ICoreWebView2FrameInfo>,
1095}
1096impl From<ComRc<dyn ICoreWebView2FrameInfo>> for FrameInfo {
1097    fn from(inner: ComRc<dyn ICoreWebView2FrameInfo>) -> Self {
1098        Self { inner }
1099    }
1100}
1101impl fmt::Debug for FrameInfo {
1102    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
1103        f.debug_struct("FrameInfo").finish()
1104    }
1105}
1106impl FrameInfo {
1107    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2FrameInfo> {
1108        self.inner
1109    }
1110    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2FrameInfo> {
1111        &self.inner
1112    }
1113}
1114
1115/// Wrapper for `ICoreWebView2Interop`.
1116#[derive(Clone)]
1117pub struct Interop {
1118    inner: ComRc<dyn ICoreWebView2Interop>,
1119}
1120impl From<ComRc<dyn ICoreWebView2Interop>> for Interop {
1121    fn from(inner: ComRc<dyn ICoreWebView2Interop>) -> Self {
1122        Self { inner }
1123    }
1124}
1125impl fmt::Debug for Interop {
1126    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
1127        f.debug_struct("Interop").finish()
1128    }
1129}
1130impl Interop {
1131    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2Interop> {
1132        self.inner
1133    }
1134    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2Interop> {
1135        &self.inner
1136    }
1137}
1138
1139/// Wrapper for `ICoreWebView2CompositionControllerInterop`.
1140#[derive(Clone)]
1141pub struct CompositionControllerInterop {
1142    inner: ComRc<dyn ICoreWebView2CompositionControllerInterop>,
1143}
1144impl From<ComRc<dyn ICoreWebView2CompositionControllerInterop>> for CompositionControllerInterop {
1145    fn from(inner: ComRc<dyn ICoreWebView2CompositionControllerInterop>) -> Self {
1146        Self { inner }
1147    }
1148}
1149impl fmt::Debug for CompositionControllerInterop {
1150    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
1151        f.debug_struct("CompositionControllerInterop").finish()
1152    }
1153}
1154impl CompositionControllerInterop {
1155    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2CompositionControllerInterop> {
1156        self.inner
1157    }
1158    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2CompositionControllerInterop> {
1159        &self.inner
1160    }
1161}
1162
1163/// Wrapper for `ICoreWebView2EnvironmentInterop`.
1164#[derive(Clone)]
1165pub struct EnvironmentInterop {
1166    inner: ComRc<dyn ICoreWebView2EnvironmentInterop>,
1167}
1168impl From<ComRc<dyn ICoreWebView2EnvironmentInterop>> for EnvironmentInterop {
1169    fn from(inner: ComRc<dyn ICoreWebView2EnvironmentInterop>) -> Self {
1170        Self { inner }
1171    }
1172}
1173impl fmt::Debug for EnvironmentInterop {
1174    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
1175        f.debug_struct("EnvironmentInterop").finish()
1176    }
1177}
1178impl EnvironmentInterop {
1179    pub fn into_inner(self) -> ComRc<dyn ICoreWebView2EnvironmentInterop> {
1180        self.inner
1181    }
1182    pub fn as_inner(&self) -> &ComRc<dyn ICoreWebView2EnvironmentInterop> {
1183        &self.inner
1184    }
1185}
1186
1187/// Wrapper for `IStream`.
1188#[derive(Clone)]
1189pub struct Stream {
1190    inner: ComRc<dyn IStream>,
1191}
1192impl From<ComRc<dyn IStream>> for Stream {
1193    fn from(inner: ComRc<dyn IStream>) -> Self {
1194        Self { inner }
1195    }
1196}
1197impl fmt::Debug for Stream {
1198    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
1199        f.debug_struct("Stream").finish()
1200    }
1201}
1202impl Stream {
1203    pub fn into_inner(self) -> ComRc<dyn IStream> {
1204        self.inner
1205    }
1206    pub fn as_inner(&self) -> &ComRc<dyn IStream> {
1207        &self.inner
1208    }
1209}