1+ import React from 'react' ;
2+ import { expectNotAssignable , expectAssignable } from 'tsd' ;
3+ import { OTSessionProps , OTPublisherProps , OTStreamsProps , OTSubscriberProps , OTSubscriberRef , OTPublisherRef } from "." ;
4+ import { Error , Event , ArchiveEvent , SignalEvent , Session , AudioLevelUpdatedEvent , Stream , SubscriberProperties } from "./opentok" ;
5+
6+ /**
7+ * OTSessionProps
8+ */
9+ expectNotAssignable < OTSessionProps > ( { } ) ;
10+ expectNotAssignable < OTSessionProps > ( {
11+ apiKey : ''
12+ } ) ;
13+ expectNotAssignable < OTSessionProps > ( {
14+ apiKey : '' ,
15+ sessionId : ''
16+ } ) ;
17+
18+ expectAssignable < OTSessionProps > ( {
19+ apiKey : '' ,
20+ sessionId : '' ,
21+ token : ''
22+ } ) ;
23+ expectAssignable < OTSessionProps > ( {
24+ apiKey : '' ,
25+ sessionId : '' ,
26+ token : '' ,
27+ eventHandlers : { }
28+ } ) ;
29+ expectAssignable < OTSessionProps > ( {
30+ apiKey : '' ,
31+ sessionId : '' ,
32+ token : '' ,
33+ eventHandlers : {
34+ archiveStarted : ( event : ArchiveEvent ) => { }
35+ }
36+ } ) ;
37+ expectAssignable < OTSessionProps > ( {
38+ apiKey : '' ,
39+ sessionId : '' ,
40+ token : '' ,
41+ eventHandlers : {
42+ archiveStarted : ( event : ArchiveEvent ) => { } ,
43+ 'signal:foo' : ( event : SignalEvent ) => { } ,
44+ 'archiveStarted streamCreated' : ( event : Event ) => { }
45+ }
46+ } ) ;
47+
48+ declare const session : Session ;
49+ declare const publisherRef : React . RefObject < OTPublisherRef > ;
50+
51+ /**
52+ * OTPublisherProps
53+ */
54+ expectNotAssignable < OTPublisherProps > ( {
55+ session : null
56+ } ) ;
57+ expectAssignable < OTPublisherProps > ( {
58+ session,
59+ } ) ;
60+ expectAssignable < OTPublisherProps > ( {
61+ session,
62+ properties : { }
63+ } ) ;
64+ expectAssignable < OTPublisherProps > ( {
65+ properties : {
66+ audioBitrate : 10000
67+ }
68+ } ) ;
69+ expectAssignable < OTPublisherProps > ( {
70+ eventHandlers : { }
71+ } ) ;
72+ expectAssignable < OTPublisherProps > ( {
73+ ref : undefined
74+ } ) ;
75+ expectAssignable < OTPublisherProps > ( {
76+ ref : ( instance : OTPublisherRef | null ) => { }
77+ } ) ;
78+ expectAssignable < OTPublisherProps > ( {
79+ ref : publisherRef
80+ } ) ;
81+ expectAssignable < OTPublisherProps > ( {
82+ eventHandlers : {
83+ accessAllowed : ( event : Event ) => undefined ,
84+ accessDenied : ( event : Event < 'accessDenied' > ) => undefined ,
85+ destroyed : event => undefined ,
86+ audioLevelUpdated : ( event : AudioLevelUpdatedEvent ) => undefined
87+ }
88+ } ) ;
89+ expectAssignable < OTPublisherProps > ( {
90+ onInit : ( ) => undefined
91+ } ) ;
92+ expectAssignable < OTPublisherProps > ( {
93+ onPublish : ( ) => undefined
94+ } ) ;
95+ expectAssignable < OTPublisherProps > ( {
96+ onError : ( ) => undefined
97+ } ) ;
98+ expectAssignable < OTPublisherProps > ( {
99+ onError : ( error : Error ) => undefined
100+ } ) ;
101+
102+ declare const node : React . ReactNode ;
103+ declare const nodeArray : React . ReactNodeArray ;
104+ declare const element : React . ReactElement ;
105+ declare const stream : Stream ;
106+
107+ /**
108+ * OTStreamsProps
109+ */
110+ expectNotAssignable < OTStreamsProps > ( { } ) ;
111+ expectNotAssignable < OTStreamsProps > ( { session } ) ;
112+ expectNotAssignable < OTStreamsProps > ( { session, streams : [ ] } ) ;
113+ expectNotAssignable < OTStreamsProps > ( {
114+ children : node
115+ } ) ;
116+ expectNotAssignable < OTStreamsProps > ( {
117+ children : nodeArray
118+ } ) ;
119+ expectAssignable < OTStreamsProps > ( {
120+ children : element
121+ } ) ;
122+ expectAssignable < OTStreamsProps > ( {
123+ children : element ,
124+ session
125+ } ) ;
126+ expectAssignable < OTStreamsProps > ( {
127+ children : element ,
128+ streams : [ ]
129+ } ) ;
130+ expectAssignable < OTStreamsProps > ( {
131+ children : element ,
132+ streams : [ stream ]
133+ } ) ;
134+
135+ declare const subscriberProperties : SubscriberProperties ;
136+ declare const subscriberRef : React . RefObject < OTSubscriberRef > ;
137+
138+ /**
139+ * OTSubscriberProps
140+ */
141+ expectAssignable < OTSubscriberProps > ( { } ) ;
142+ expectAssignable < OTSubscriberProps > ( { session } ) ;
143+ expectAssignable < OTSubscriberProps > ( { stream } ) ;
144+ expectAssignable < OTSubscriberProps > ( { onSubscribe : ( ) => undefined } ) ;
145+ expectAssignable < OTSubscriberProps > ( { onError : ( ) => undefined } ) ;
146+ expectAssignable < OTSubscriberProps > ( { onError : error => undefined } ) ;
147+ expectAssignable < OTSubscriberProps > ( { onError : ( error : Error ) => undefined } ) ;
148+ expectAssignable < OTSubscriberProps > ( {
149+ properties : subscriberProperties
150+ } ) ;
151+ expectNotAssignable < OTSubscriberProps > ( {
152+ properties : null
153+ } ) ;
154+ expectNotAssignable < OTSubscriberProps > ( {
155+ properties : {
156+ fitMode : NaN
157+ }
158+ } ) ;
159+ expectAssignable < OTSubscriberProps > ( {
160+ eventHandlers : { }
161+ } ) ;
162+ expectAssignable < OTSubscriberProps > ( {
163+ ref : undefined
164+ } ) ;
165+ expectAssignable < OTSubscriberProps > ( {
166+ ref : ( instance : OTSubscriberRef | null ) => { }
167+ } ) ;
168+ expectAssignable < OTSubscriberProps > ( {
169+ ref : subscriberRef
170+ } ) ;
171+ expectAssignable < OTSubscriberProps > ( {
172+ eventHandlers : {
173+ videoDimensionsChanged : event => undefined ,
174+ audioBlocked : ( event : Event ) => undefined ,
175+ audioLevelUpdated : ( event : AudioLevelUpdatedEvent ) => undefined ,
176+ videoElementCreated : ( event : Event ) => undefined
177+ }
178+ } ) ;
179+ expectNotAssignable < OTSubscriberProps > ( {
180+ eventHandlers : {
181+ 'foo' : ( event : Event ) => undefined
182+ }
183+ } ) ;
0 commit comments