@wave-av/sdk 2.0.4 → 2.0.5
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/dist/audience.d.ts +105 -0
- package/dist/audience.d.ts.map +1 -0
- package/dist/billing-types.d.ts +39 -0
- package/dist/billing-types.d.ts.map +1 -0
- package/dist/billing-types.js +18 -0
- package/dist/billing-types.mjs +0 -0
- package/dist/billing.d.ts +69 -0
- package/dist/billing.d.ts.map +1 -0
- package/dist/billing.js +139 -0
- package/dist/billing.mjs +9 -0
- package/dist/camera-control.d.ts +55 -0
- package/dist/camera-control.d.ts.map +1 -0
- package/dist/captions-types.d.ts +119 -0
- package/dist/captions-types.d.ts.map +1 -0
- package/dist/captions.d.ts +218 -0
- package/dist/captions.d.ts.map +1 -0
- package/dist/chapters-types.d.ts +87 -0
- package/dist/chapters-types.d.ts.map +1 -0
- package/dist/chapters.d.ts +207 -0
- package/dist/chapters.d.ts.map +1 -0
- package/dist/chunk-I3V47I4W.mjs +114 -0
- package/dist/client-types.d.ts +59 -0
- package/dist/client-types.d.ts.map +1 -0
- package/dist/client.d.ts +119 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/clips-types.d.ts +31 -0
- package/dist/clips-types.d.ts.map +1 -0
- package/dist/clips.d.ts +230 -0
- package/dist/clips.d.ts.map +1 -0
- package/dist/cloud-switcher.d.ts +66 -0
- package/dist/cloud-switcher.d.ts.map +1 -0
- package/dist/collab-types.d.ts +205 -0
- package/dist/collab-types.d.ts.map +1 -0
- package/dist/collab.d.ts +227 -0
- package/dist/collab.d.ts.map +1 -0
- package/dist/connect.d.ts +89 -0
- package/dist/connect.d.ts.map +1 -0
- package/dist/creator.d.ts +110 -0
- package/dist/creator.d.ts.map +1 -0
- package/dist/desktop.d.ts +96 -0
- package/dist/desktop.d.ts.map +1 -0
- package/dist/distribution.d.ts +93 -0
- package/dist/distribution.d.ts.map +1 -0
- package/dist/drm.d.ts +88 -0
- package/dist/drm.d.ts.map +1 -0
- package/dist/edge.d.ts +113 -0
- package/dist/edge.d.ts.map +1 -0
- package/dist/editor-types.d.ts +237 -0
- package/dist/editor-types.d.ts.map +1 -0
- package/dist/editor.d.ts +207 -0
- package/dist/editor.d.ts.map +1 -0
- package/dist/fleet.d.ts +208 -0
- package/dist/fleet.d.ts.map +1 -0
- package/dist/ghost.d.ts +214 -0
- package/dist/ghost.d.ts.map +1 -0
- package/dist/index.d.ts +131 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +114 -0
- package/dist/index.mjs +49 -43
- package/dist/marketplace.d.ts +91 -0
- package/dist/marketplace.d.ts.map +1 -0
- package/dist/mesh.d.ts +238 -0
- package/dist/mesh.d.ts.map +1 -0
- package/dist/notifications.d.ts +83 -0
- package/dist/notifications.d.ts.map +1 -0
- package/dist/phone-types.d.ts +111 -0
- package/dist/phone-types.d.ts.map +1 -0
- package/dist/phone.d.ts +235 -0
- package/dist/phone.d.ts.map +1 -0
- package/dist/pipeline-types.d.ts +188 -0
- package/dist/pipeline-types.d.ts.map +1 -0
- package/dist/pipeline.d.ts +224 -0
- package/dist/pipeline.d.ts.map +1 -0
- package/dist/podcast.d.ts +114 -0
- package/dist/podcast.d.ts.map +1 -0
- package/dist/prism.d.ts +133 -0
- package/dist/prism.d.ts.map +1 -0
- package/dist/prompter.d.ts +185 -0
- package/dist/prompter.d.ts.map +1 -0
- package/dist/pulse.d.ts +157 -0
- package/dist/pulse.d.ts.map +1 -0
- package/dist/qr.d.ts +83 -0
- package/dist/qr.d.ts.map +1 -0
- package/dist/replay.d.ts +53 -0
- package/dist/replay.d.ts.map +1 -0
- package/dist/scene-types.d.ts +191 -0
- package/dist/scene-types.d.ts.map +1 -0
- package/dist/scene.d.ts +214 -0
- package/dist/scene.d.ts.map +1 -0
- package/dist/search-types.d.ts +211 -0
- package/dist/search-types.d.ts.map +1 -0
- package/dist/search.d.ts +251 -0
- package/dist/search.d.ts.map +1 -0
- package/dist/sentiment-types.d.ts +108 -0
- package/dist/sentiment-types.d.ts.map +1 -0
- package/dist/sentiment.d.ts +247 -0
- package/dist/sentiment.d.ts.map +1 -0
- package/dist/signage.d.ts +102 -0
- package/dist/signage.d.ts.map +1 -0
- package/dist/slides.d.ts +69 -0
- package/dist/slides.d.ts.map +1 -0
- package/dist/studio-ai-types.d.ts +199 -0
- package/dist/studio-ai-types.d.ts.map +1 -0
- package/dist/studio-ai.d.ts +219 -0
- package/dist/studio-ai.d.ts.map +1 -0
- package/dist/studio-types.d.ts +268 -0
- package/dist/studio-types.d.ts.map +1 -0
- package/dist/studio.d.ts +235 -0
- package/dist/studio.d.ts.map +1 -0
- package/dist/telemetry.d.ts +77 -0
- package/dist/telemetry.d.ts.map +1 -0
- package/dist/transcribe-types.d.ts +154 -0
- package/dist/transcribe-types.d.ts.map +1 -0
- package/dist/transcribe.d.ts +219 -0
- package/dist/transcribe.d.ts.map +1 -0
- package/dist/usb.d.ts +65 -0
- package/dist/usb.d.ts.map +1 -0
- package/dist/vault.d.ts +122 -0
- package/dist/vault.d.ts.map +1 -0
- package/dist/voice-types.d.ts +107 -0
- package/dist/voice-types.d.ts.map +1 -0
- package/dist/voice.d.ts +178 -0
- package/dist/voice.d.ts.map +1 -0
- package/dist/zoom.d.ts +92 -0
- package/dist/zoom.d.ts.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
export type VoiceModelType = 'standard' | 'neural' | 'cloned' | 'professional';
|
|
2
|
+
export type VoiceGender = 'male' | 'female' | 'neutral';
|
|
3
|
+
export type AudioFormat = 'mp3' | 'wav' | 'ogg' | 'flac' | 'pcm';
|
|
4
|
+
export interface Voice extends Timestamps {
|
|
5
|
+
id: string;
|
|
6
|
+
organization_id?: string;
|
|
7
|
+
name: string;
|
|
8
|
+
description?: string;
|
|
9
|
+
model_type: VoiceModelType;
|
|
10
|
+
gender: VoiceGender;
|
|
11
|
+
language: string;
|
|
12
|
+
locale: string;
|
|
13
|
+
preview_url?: string;
|
|
14
|
+
is_public: boolean;
|
|
15
|
+
is_cloned: boolean;
|
|
16
|
+
tags?: string[];
|
|
17
|
+
metadata?: Metadata;
|
|
18
|
+
}
|
|
19
|
+
export interface SynthesizeRequest {
|
|
20
|
+
/** Text to convert to speech */
|
|
21
|
+
text: string;
|
|
22
|
+
/** Voice ID to use */
|
|
23
|
+
voice_id: string;
|
|
24
|
+
/** Audio output format */
|
|
25
|
+
format?: AudioFormat;
|
|
26
|
+
/** Sample rate in Hz */
|
|
27
|
+
sample_rate?: 16000 | 22050 | 24000 | 44100 | 48000;
|
|
28
|
+
/** Speaking speed (0.5 - 2.0) */
|
|
29
|
+
speed?: number;
|
|
30
|
+
/** Pitch adjustment (-20 to 20 semitones) */
|
|
31
|
+
pitch?: number;
|
|
32
|
+
/** Volume level (0.0 - 1.0) */
|
|
33
|
+
volume?: number;
|
|
34
|
+
/** Enable SSML parsing */
|
|
35
|
+
ssml?: boolean;
|
|
36
|
+
/** Stability (0.0 - 1.0, lower = more expressive) */
|
|
37
|
+
stability?: number;
|
|
38
|
+
/** Similarity boost (0.0 - 1.0) */
|
|
39
|
+
similarity_boost?: number;
|
|
40
|
+
/** Style exaggeration (0.0 - 1.0) */
|
|
41
|
+
style?: number;
|
|
42
|
+
/** Webhook URL for completion notification */
|
|
43
|
+
webhook_url?: string;
|
|
44
|
+
}
|
|
45
|
+
export interface SynthesisResult extends Timestamps {
|
|
46
|
+
id: string;
|
|
47
|
+
organization_id: string;
|
|
48
|
+
voice_id: string;
|
|
49
|
+
status: 'pending' | 'processing' | 'ready' | 'failed';
|
|
50
|
+
text: string;
|
|
51
|
+
text_length: number;
|
|
52
|
+
audio_url?: string;
|
|
53
|
+
duration?: number;
|
|
54
|
+
format: AudioFormat;
|
|
55
|
+
sample_rate: number;
|
|
56
|
+
file_size?: number;
|
|
57
|
+
error?: string;
|
|
58
|
+
}
|
|
59
|
+
export interface CloneVoiceRequest {
|
|
60
|
+
name: string;
|
|
61
|
+
description?: string;
|
|
62
|
+
/** Audio sample URLs (minimum 1 minute of clean audio) */
|
|
63
|
+
sample_urls: string[];
|
|
64
|
+
/** Optional text transcripts for samples */
|
|
65
|
+
transcripts?: string[];
|
|
66
|
+
/** Target language */
|
|
67
|
+
language?: string;
|
|
68
|
+
/** Voice gender */
|
|
69
|
+
gender?: VoiceGender;
|
|
70
|
+
/** Additional training options */
|
|
71
|
+
options?: {
|
|
72
|
+
/** Remove background noise from samples */
|
|
73
|
+
denoise?: boolean;
|
|
74
|
+
/** Number of training epochs */
|
|
75
|
+
epochs?: number;
|
|
76
|
+
/** Fine-tuning quality */
|
|
77
|
+
quality?: 'standard' | 'high' | 'professional';
|
|
78
|
+
};
|
|
79
|
+
tags?: string[];
|
|
80
|
+
metadata?: Metadata;
|
|
81
|
+
}
|
|
82
|
+
export interface VoiceCloneJob extends Timestamps {
|
|
83
|
+
id: string;
|
|
84
|
+
organization_id: string;
|
|
85
|
+
voice_id?: string;
|
|
86
|
+
status: 'pending' | 'processing' | 'training' | 'ready' | 'failed';
|
|
87
|
+
progress: number;
|
|
88
|
+
name: string;
|
|
89
|
+
sample_count: number;
|
|
90
|
+
total_duration: number;
|
|
91
|
+
error?: string;
|
|
92
|
+
}
|
|
93
|
+
export interface ListVoicesParams extends PaginationParams {
|
|
94
|
+
model_type?: VoiceModelType;
|
|
95
|
+
gender?: VoiceGender;
|
|
96
|
+
language?: string;
|
|
97
|
+
is_public?: boolean;
|
|
98
|
+
is_cloned?: boolean;
|
|
99
|
+
tags?: string[];
|
|
100
|
+
}
|
|
101
|
+
export interface VoiceSettings {
|
|
102
|
+
stability: number;
|
|
103
|
+
similarity_boost: number;
|
|
104
|
+
style?: number;
|
|
105
|
+
use_speaker_boost?: boolean;
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=voice-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"voice-types.d.ts","sourceRoot":"","sources":["../src/voice-types.ts"],"names":[],"mappings":"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"}
|
package/dist/voice.d.ts
ADDED
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WAVE SDK - Voice API
|
|
3
|
+
*
|
|
4
|
+
* Text-to-speech and voice cloning capabilities.
|
|
5
|
+
*
|
|
6
|
+
* NOTE: This is a client SDK. All authorization checks are performed server-side.
|
|
7
|
+
* The API will return 403 Forbidden if the user lacks required permissions.
|
|
8
|
+
*/
|
|
9
|
+
import type { WaveClient, PaginationParams, PaginatedResponse } from './client';
|
|
10
|
+
import type { Voice, SynthesizeRequest, SynthesisResult, CloneVoiceRequest, VoiceCloneJob, ListVoicesParams, VoiceSettings } from './voice-types';
|
|
11
|
+
/**
|
|
12
|
+
* Voice model type
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* Voice gender
|
|
16
|
+
*/
|
|
17
|
+
/**
|
|
18
|
+
* Audio format
|
|
19
|
+
*/
|
|
20
|
+
/**
|
|
21
|
+
* Voice definition
|
|
22
|
+
*/
|
|
23
|
+
/**
|
|
24
|
+
* Speech synthesis request
|
|
25
|
+
*/
|
|
26
|
+
/**
|
|
27
|
+
* Speech synthesis result
|
|
28
|
+
*/
|
|
29
|
+
/**
|
|
30
|
+
* Voice cloning request
|
|
31
|
+
*/
|
|
32
|
+
/**
|
|
33
|
+
* Voice clone job
|
|
34
|
+
*/
|
|
35
|
+
/**
|
|
36
|
+
* List voices params
|
|
37
|
+
*/
|
|
38
|
+
/**
|
|
39
|
+
* Voice settings
|
|
40
|
+
*/
|
|
41
|
+
/**
|
|
42
|
+
* Voice API client
|
|
43
|
+
*/
|
|
44
|
+
export declare class VoiceAPI {
|
|
45
|
+
private readonly client;
|
|
46
|
+
private readonly basePath;
|
|
47
|
+
constructor(client: WaveClient);
|
|
48
|
+
/**
|
|
49
|
+
* List available voices
|
|
50
|
+
*
|
|
51
|
+
* Requires: voice:read permission
|
|
52
|
+
*/
|
|
53
|
+
listVoices(params?: ListVoicesParams): Promise<PaginatedResponse<Voice>>;
|
|
54
|
+
/**
|
|
55
|
+
* Get a voice by ID
|
|
56
|
+
*
|
|
57
|
+
* Requires: voice:read permission
|
|
58
|
+
*/
|
|
59
|
+
getVoice(voiceId: string): Promise<Voice>;
|
|
60
|
+
/**
|
|
61
|
+
* Get default voice settings for a voice
|
|
62
|
+
*
|
|
63
|
+
* Requires: voice:read permission
|
|
64
|
+
*/
|
|
65
|
+
getVoiceSettings(voiceId: string): Promise<VoiceSettings>;
|
|
66
|
+
/**
|
|
67
|
+
* Update voice settings for a cloned voice
|
|
68
|
+
*
|
|
69
|
+
* Requires: voice:update permission
|
|
70
|
+
*/
|
|
71
|
+
updateVoiceSettings(voiceId: string, settings: Partial<VoiceSettings>): Promise<VoiceSettings>;
|
|
72
|
+
/**
|
|
73
|
+
* Remove a cloned voice
|
|
74
|
+
*
|
|
75
|
+
* Requires: voice:remove permission (server-side RBAC enforced)
|
|
76
|
+
*/
|
|
77
|
+
removeVoice(voiceId: string): Promise<void>;
|
|
78
|
+
/**
|
|
79
|
+
* Synthesize text to speech
|
|
80
|
+
*
|
|
81
|
+
* Requires: voice:synthesize permission
|
|
82
|
+
*/
|
|
83
|
+
synthesize(request: SynthesizeRequest): Promise<SynthesisResult>;
|
|
84
|
+
/**
|
|
85
|
+
* Get synthesis job status
|
|
86
|
+
*
|
|
87
|
+
* Requires: voice:read permission
|
|
88
|
+
*/
|
|
89
|
+
getSynthesis(synthesisId: string): Promise<SynthesisResult>;
|
|
90
|
+
/**
|
|
91
|
+
* List synthesis jobs
|
|
92
|
+
*
|
|
93
|
+
* Requires: voice:read permission
|
|
94
|
+
*/
|
|
95
|
+
listSyntheses(params?: PaginationParams & {
|
|
96
|
+
voice_id?: string;
|
|
97
|
+
status?: 'pending' | 'processing' | 'ready' | 'failed';
|
|
98
|
+
}): Promise<PaginatedResponse<SynthesisResult>>;
|
|
99
|
+
/**
|
|
100
|
+
* Synthesize speech and stream the audio
|
|
101
|
+
*
|
|
102
|
+
* Requires: voice:synthesize permission
|
|
103
|
+
*
|
|
104
|
+
* @returns ReadableStream of audio data
|
|
105
|
+
*/
|
|
106
|
+
synthesizeStream(request: Omit<SynthesizeRequest, 'webhook_url'>): Promise<ReadableStream<Uint8Array>>;
|
|
107
|
+
/**
|
|
108
|
+
* Wait for synthesis to complete
|
|
109
|
+
*/
|
|
110
|
+
waitForSynthesis(synthesisId: string, options?: {
|
|
111
|
+
pollInterval?: number;
|
|
112
|
+
timeout?: number;
|
|
113
|
+
onProgress?: (synthesis: SynthesisResult) => void;
|
|
114
|
+
}): Promise<SynthesisResult>;
|
|
115
|
+
/**
|
|
116
|
+
* Start voice cloning job
|
|
117
|
+
*
|
|
118
|
+
* Requires: voice:clone permission
|
|
119
|
+
*/
|
|
120
|
+
cloneVoice(request: CloneVoiceRequest): Promise<VoiceCloneJob>;
|
|
121
|
+
/**
|
|
122
|
+
* Get voice clone job status
|
|
123
|
+
*
|
|
124
|
+
* Requires: voice:read permission
|
|
125
|
+
*/
|
|
126
|
+
getCloneJob(jobId: string): Promise<VoiceCloneJob>;
|
|
127
|
+
/**
|
|
128
|
+
* List voice clone jobs
|
|
129
|
+
*
|
|
130
|
+
* Requires: voice:read permission
|
|
131
|
+
*/
|
|
132
|
+
listCloneJobs(params?: PaginationParams & {
|
|
133
|
+
status?: 'pending' | 'processing' | 'training' | 'ready' | 'failed';
|
|
134
|
+
}): Promise<PaginatedResponse<VoiceCloneJob>>;
|
|
135
|
+
/**
|
|
136
|
+
* Cancel a voice clone job
|
|
137
|
+
*
|
|
138
|
+
* Requires: voice:clone permission
|
|
139
|
+
*/
|
|
140
|
+
cancelCloneJob(jobId: string): Promise<VoiceCloneJob>;
|
|
141
|
+
/**
|
|
142
|
+
* Wait for voice cloning to complete
|
|
143
|
+
*/
|
|
144
|
+
waitForClone(jobId: string, options?: {
|
|
145
|
+
pollInterval?: number;
|
|
146
|
+
timeout?: number;
|
|
147
|
+
onProgress?: (job: VoiceCloneJob) => void;
|
|
148
|
+
}): Promise<VoiceCloneJob>;
|
|
149
|
+
/**
|
|
150
|
+
* Estimate synthesis cost
|
|
151
|
+
*
|
|
152
|
+
* Requires: voice:read permission
|
|
153
|
+
*/
|
|
154
|
+
estimateCost(text: string, voiceId: string): Promise<{
|
|
155
|
+
characters: number;
|
|
156
|
+
estimated_duration: number;
|
|
157
|
+
estimated_cost: number;
|
|
158
|
+
currency: string;
|
|
159
|
+
}>;
|
|
160
|
+
/**
|
|
161
|
+
* Get supported languages
|
|
162
|
+
*
|
|
163
|
+
* Requires: voice:read permission
|
|
164
|
+
*/
|
|
165
|
+
getSupportedLanguages(): Promise<Array<{
|
|
166
|
+
code: string;
|
|
167
|
+
name: string;
|
|
168
|
+
locales: Array<{
|
|
169
|
+
code: string;
|
|
170
|
+
name: string;
|
|
171
|
+
}>;
|
|
172
|
+
}>>;
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Create a Voice API instance
|
|
176
|
+
*/
|
|
177
|
+
export declare function createVoiceAPI(client: WaveClient): VoiceAPI;
|
|
178
|
+
//# sourceMappingURL=voice.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"voice.d.ts","sourceRoot":"","sources":["../src/voice.ts"],"names":[],"mappings":"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"}
|
package/dist/zoom.d.ts
ADDED
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WAVE SDK - Zoom API
|
|
3
|
+
*
|
|
4
|
+
* Zoom meeting, Zoom Room, and RTMS integration.
|
|
5
|
+
*/
|
|
6
|
+
import type { WaveClient, PaginationParams, PaginatedResponse, Timestamps } from "./client";
|
|
7
|
+
export interface ZoomMeeting {
|
|
8
|
+
id: string;
|
|
9
|
+
topic: string;
|
|
10
|
+
type: "instant" | "scheduled" | "recurring";
|
|
11
|
+
status: "waiting" | "started" | "ended";
|
|
12
|
+
start_url: string;
|
|
13
|
+
join_url: string;
|
|
14
|
+
host_id: string;
|
|
15
|
+
duration_minutes: number;
|
|
16
|
+
participants_count: number;
|
|
17
|
+
recording_enabled: boolean;
|
|
18
|
+
rtms_enabled: boolean;
|
|
19
|
+
created_at: string;
|
|
20
|
+
}
|
|
21
|
+
export interface ZoomRoom {
|
|
22
|
+
id: string;
|
|
23
|
+
name: string;
|
|
24
|
+
location?: string;
|
|
25
|
+
status: "online" | "offline" | "in_meeting";
|
|
26
|
+
account_id: string;
|
|
27
|
+
device_ip?: string;
|
|
28
|
+
firmware_version?: string;
|
|
29
|
+
camera_count: number;
|
|
30
|
+
microphone_count: number;
|
|
31
|
+
}
|
|
32
|
+
export interface ZoomRecording extends Timestamps {
|
|
33
|
+
id: string;
|
|
34
|
+
meeting_id: string;
|
|
35
|
+
type: "cloud" | "rtms";
|
|
36
|
+
status: "processing" | "completed" | "failed";
|
|
37
|
+
file_url?: string;
|
|
38
|
+
duration_seconds: number;
|
|
39
|
+
file_size_bytes: number;
|
|
40
|
+
}
|
|
41
|
+
export interface CreateMeetingRequest {
|
|
42
|
+
topic: string;
|
|
43
|
+
type?: "instant" | "scheduled" | "recurring";
|
|
44
|
+
duration_minutes?: number;
|
|
45
|
+
start_time?: string;
|
|
46
|
+
recording_enabled?: boolean;
|
|
47
|
+
rtms_enabled?: boolean;
|
|
48
|
+
password?: string;
|
|
49
|
+
}
|
|
50
|
+
export interface ListMeetingsParams extends PaginationParams {
|
|
51
|
+
status?: string;
|
|
52
|
+
type?: string;
|
|
53
|
+
host_id?: string;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Zoom meeting, Zoom Room, and RTMS streaming integration.
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* ```typescript
|
|
60
|
+
* const meeting = await wave.zoom.createMeeting({ topic: "Team Standup" });
|
|
61
|
+
* await wave.zoom.startRTMS(meeting.id, { stream_url: "rtmp://...", stream_key: "key" });
|
|
62
|
+
* const rooms = await wave.zoom.listRooms();
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
export declare class ZoomAPI {
|
|
66
|
+
private readonly client;
|
|
67
|
+
private readonly basePath;
|
|
68
|
+
constructor(client: WaveClient);
|
|
69
|
+
createMeeting(request: CreateMeetingRequest): Promise<ZoomMeeting>;
|
|
70
|
+
getMeeting(meetingId: string): Promise<ZoomMeeting>;
|
|
71
|
+
endMeeting(meetingId: string): Promise<void>;
|
|
72
|
+
listMeetings(params?: ListMeetingsParams): Promise<PaginatedResponse<ZoomMeeting>>;
|
|
73
|
+
listRooms(params?: PaginationParams): Promise<PaginatedResponse<ZoomRoom>>;
|
|
74
|
+
getRoomStatus(roomId: string): Promise<ZoomRoom>;
|
|
75
|
+
getRecording(recordingId: string): Promise<ZoomRecording>;
|
|
76
|
+
listRecordings(meetingId?: string, params?: PaginationParams): Promise<PaginatedResponse<ZoomRecording>>;
|
|
77
|
+
startRTMS(meetingId: string, config: {
|
|
78
|
+
stream_url: string;
|
|
79
|
+
stream_key: string;
|
|
80
|
+
}): Promise<{
|
|
81
|
+
status: string;
|
|
82
|
+
}>;
|
|
83
|
+
stopRTMS(meetingId: string): Promise<{
|
|
84
|
+
status: string;
|
|
85
|
+
}>;
|
|
86
|
+
getRTMSStatus(meetingId: string): Promise<{
|
|
87
|
+
status: string;
|
|
88
|
+
stream_url?: string;
|
|
89
|
+
}>;
|
|
90
|
+
}
|
|
91
|
+
export declare function createZoomAPI(client: WaveClient): ZoomAPI;
|
|
92
|
+
//# sourceMappingURL=zoom.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zoom.d.ts","sourceRoot":"","sources":["../src/zoom.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wave-av/sdk",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.5",
|
|
4
4
|
"description": "Official WAVE SDK - 34 API modules covering streaming, production, device management, analytics, content, monetization, and more",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.mjs",
|
|
@@ -224,7 +224,7 @@
|
|
|
224
224
|
"LICENSE"
|
|
225
225
|
],
|
|
226
226
|
"scripts": {
|
|
227
|
-
"build": "tsup src/*.ts --format cjs,esm --clean",
|
|
227
|
+
"build": "tsup src/*.ts --format cjs,esm --clean && tsc --emitDeclarationOnly --declaration --outDir dist",
|
|
228
228
|
"dev": "tsup src/*.ts --format cjs,esm --dts --watch",
|
|
229
229
|
"lint": "eslint src/",
|
|
230
230
|
"test": "vitest run",
|