@wave-av/sdk 2.0.0 → 2.0.1
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 +104 -0
- package/dist/audience.d.ts.map +1 -0
- package/dist/camera-control.d.ts +54 -0
- package/dist/camera-control.d.ts.map +1 -0
- package/dist/captions.d.ts +362 -0
- package/dist/captions.d.ts.map +1 -0
- package/dist/chapters.d.ts +315 -0
- package/dist/chapters.d.ts.map +1 -0
- package/dist/client.d.ts +191 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/clips.d.ts +258 -0
- package/dist/clips.d.ts.map +1 -0
- package/dist/cloud-switcher.d.ts +65 -0
- package/dist/cloud-switcher.d.ts.map +1 -0
- package/dist/collab-types.d.ts +204 -0
- package/dist/collab-types.d.ts.map +1 -0
- package/dist/collab.d.ts +226 -0
- package/dist/collab.d.ts.map +1 -0
- package/dist/connect.d.ts +88 -0
- package/dist/connect.d.ts.map +1 -0
- package/dist/creator.d.ts +109 -0
- package/dist/creator.d.ts.map +1 -0
- package/dist/desktop.d.ts +95 -0
- package/dist/desktop.d.ts.map +1 -0
- package/dist/distribution.d.ts +92 -0
- package/dist/distribution.d.ts.map +1 -0
- package/dist/drm.d.ts +87 -0
- package/dist/drm.d.ts.map +1 -0
- package/dist/edge.d.ts +112 -0
- package/dist/edge.d.ts.map +1 -0
- package/dist/editor-types.d.ts +236 -0
- package/dist/editor-types.d.ts.map +1 -0
- package/dist/editor.d.ts +206 -0
- package/dist/editor.d.ts.map +1 -0
- package/dist/fleet.d.ts +207 -0
- package/dist/fleet.d.ts.map +1 -0
- package/dist/ghost.d.ts +213 -0
- package/dist/ghost.d.ts.map +1 -0
- package/dist/index.d.ts +144 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/marketplace.d.ts +90 -0
- package/dist/marketplace.d.ts.map +1 -0
- package/dist/mesh.d.ts +237 -0
- package/dist/mesh.d.ts.map +1 -0
- package/dist/notifications.d.ts +82 -0
- package/dist/notifications.d.ts.map +1 -0
- package/dist/phone.d.ts +369 -0
- package/dist/phone.d.ts.map +1 -0
- package/dist/pipeline.d.ts +409 -0
- package/dist/pipeline.d.ts.map +1 -0
- package/dist/podcast.d.ts +113 -0
- package/dist/podcast.d.ts.map +1 -0
- package/dist/prism.d.ts +132 -0
- package/dist/prism.d.ts.map +1 -0
- package/dist/prompter.d.ts +184 -0
- package/dist/prompter.d.ts.map +1 -0
- package/dist/pulse.d.ts +156 -0
- package/dist/pulse.d.ts.map +1 -0
- package/dist/qr.d.ts +82 -0
- package/dist/qr.d.ts.map +1 -0
- package/dist/replay.d.ts +52 -0
- package/dist/replay.d.ts.map +1 -0
- package/dist/scene-types.d.ts +190 -0
- package/dist/scene-types.d.ts.map +1 -0
- package/dist/scene.d.ts +213 -0
- package/dist/scene.d.ts.map +1 -0
- package/dist/search-types.d.ts +210 -0
- package/dist/search-types.d.ts.map +1 -0
- package/dist/search.d.ts +250 -0
- package/dist/search.d.ts.map +1 -0
- package/dist/sentiment.d.ts +378 -0
- package/dist/sentiment.d.ts.map +1 -0
- package/dist/signage.d.ts +101 -0
- package/dist/signage.d.ts.map +1 -0
- package/dist/slides.d.ts +68 -0
- package/dist/slides.d.ts.map +1 -0
- package/dist/studio-ai-types.d.ts +198 -0
- package/dist/studio-ai-types.d.ts.map +1 -0
- package/dist/studio-ai.d.ts +218 -0
- package/dist/studio-ai.d.ts.map +1 -0
- package/dist/studio-types.d.ts +267 -0
- package/dist/studio-types.d.ts.map +1 -0
- package/dist/studio.d.ts +234 -0
- package/dist/studio.d.ts.map +1 -0
- package/dist/telemetry.d.ts +76 -0
- package/dist/telemetry.d.ts.map +1 -0
- package/dist/transcribe-types.d.ts +153 -0
- package/dist/transcribe-types.d.ts.map +1 -0
- package/dist/transcribe.d.ts +218 -0
- package/dist/transcribe.d.ts.map +1 -0
- package/dist/usb.d.ts +64 -0
- package/dist/usb.d.ts.map +1 -0
- package/dist/vault.d.ts +121 -0
- package/dist/vault.d.ts.map +1 -0
- package/dist/voice.d.ts +307 -0
- package/dist/voice.d.ts.map +1 -0
- package/dist/zoom.d.ts +91 -0
- package/dist/zoom.d.ts.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WAVE SDK - Marketplace API
|
|
3
|
+
*
|
|
4
|
+
* Template, plugin, and asset marketplace.
|
|
5
|
+
*/
|
|
6
|
+
import type { WaveClient, PaginationParams, PaginatedResponse, Timestamps } from "./client";
|
|
7
|
+
export type ItemType = "template" | "plugin" | "graphic" | "transition" | "audio_effect" | "theme";
|
|
8
|
+
export type ItemStatus = "draft" | "review" | "published" | "rejected" | "deprecated";
|
|
9
|
+
export interface MarketplaceItem extends Timestamps {
|
|
10
|
+
id: string;
|
|
11
|
+
name: string;
|
|
12
|
+
description: string;
|
|
13
|
+
type: ItemType;
|
|
14
|
+
status: ItemStatus;
|
|
15
|
+
author_id: string;
|
|
16
|
+
author_name: string;
|
|
17
|
+
version: string;
|
|
18
|
+
price_cents: number;
|
|
19
|
+
downloads: number;
|
|
20
|
+
rating: number;
|
|
21
|
+
rating_count: number;
|
|
22
|
+
preview_url?: string;
|
|
23
|
+
thumbnail_url?: string;
|
|
24
|
+
tags?: string[];
|
|
25
|
+
category: string;
|
|
26
|
+
}
|
|
27
|
+
export interface InstalledItem {
|
|
28
|
+
id: string;
|
|
29
|
+
item_id: string;
|
|
30
|
+
organization_id: string;
|
|
31
|
+
version: string;
|
|
32
|
+
installed_at: string;
|
|
33
|
+
auto_update: boolean;
|
|
34
|
+
}
|
|
35
|
+
export interface Review extends Timestamps {
|
|
36
|
+
id: string;
|
|
37
|
+
item_id: string;
|
|
38
|
+
user_id: string;
|
|
39
|
+
rating: number;
|
|
40
|
+
comment: string;
|
|
41
|
+
}
|
|
42
|
+
export interface ListItemsParams extends PaginationParams {
|
|
43
|
+
type?: ItemType;
|
|
44
|
+
category?: string;
|
|
45
|
+
min_rating?: number;
|
|
46
|
+
max_price?: number;
|
|
47
|
+
search?: string;
|
|
48
|
+
order_by?: string;
|
|
49
|
+
order?: "asc" | "desc";
|
|
50
|
+
}
|
|
51
|
+
export interface PublishRequest {
|
|
52
|
+
name: string;
|
|
53
|
+
description: string;
|
|
54
|
+
type: ItemType;
|
|
55
|
+
price_cents?: number;
|
|
56
|
+
tags?: string[];
|
|
57
|
+
category: string;
|
|
58
|
+
file_url: string;
|
|
59
|
+
preview_url?: string;
|
|
60
|
+
thumbnail_url?: string;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Template, plugin, and asset marketplace for browsing, installing, and publishing.
|
|
64
|
+
*
|
|
65
|
+
* @example
|
|
66
|
+
* ```typescript
|
|
67
|
+
* const items = await wave.marketplace.list({ type: "template", category: "overlays" });
|
|
68
|
+
* await wave.marketplace.install(items.data[0].id);
|
|
69
|
+
* ```
|
|
70
|
+
*/
|
|
71
|
+
export declare class MarketplaceAPI {
|
|
72
|
+
private readonly client;
|
|
73
|
+
private readonly basePath;
|
|
74
|
+
constructor(client: WaveClient);
|
|
75
|
+
list(params?: ListItemsParams): Promise<PaginatedResponse<MarketplaceItem>>;
|
|
76
|
+
get(itemId: string): Promise<MarketplaceItem>;
|
|
77
|
+
install(itemId: string): Promise<InstalledItem>;
|
|
78
|
+
uninstall(itemId: string): Promise<void>;
|
|
79
|
+
listInstalled(params?: PaginationParams): Promise<PaginatedResponse<InstalledItem>>;
|
|
80
|
+
publish(request: PublishRequest): Promise<MarketplaceItem>;
|
|
81
|
+
update(itemId: string, updates: Partial<PublishRequest>): Promise<MarketplaceItem>;
|
|
82
|
+
deprecate(itemId: string): Promise<void>;
|
|
83
|
+
getReviews(itemId: string, params?: PaginationParams): Promise<PaginatedResponse<Review>>;
|
|
84
|
+
addReview(itemId: string, review: {
|
|
85
|
+
rating: number;
|
|
86
|
+
comment: string;
|
|
87
|
+
}): Promise<Review>;
|
|
88
|
+
search(query: string, params?: ListItemsParams): Promise<PaginatedResponse<MarketplaceItem>>;
|
|
89
|
+
}
|
|
90
|
+
export declare function createMarketplaceAPI(client: WaveClient): MarketplaceAPI;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marketplace.d.ts","sourceRoot":"","sources":["../src/marketplace.ts"],"names":[],"mappings":"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"}
|
package/dist/mesh.d.ts
ADDED
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WAVE SDK - Mesh API
|
|
3
|
+
*
|
|
4
|
+
* Multi-region infrastructure failover. Manage regions, peers, failover
|
|
5
|
+
* policies, and replication across your global streaming infrastructure.
|
|
6
|
+
*
|
|
7
|
+
* NOTE: This is a client SDK. All authorization checks are performed server-side.
|
|
8
|
+
* The API will return 403 Forbidden if the user lacks required permissions.
|
|
9
|
+
*/
|
|
10
|
+
import type { WaveClient, PaginationParams, PaginatedResponse, Timestamps } from "./client";
|
|
11
|
+
/**
|
|
12
|
+
* Region operational status
|
|
13
|
+
*/
|
|
14
|
+
export type RegionStatus = "active" | "standby" | "draining" | "offline";
|
|
15
|
+
/**
|
|
16
|
+
* Failover strategy
|
|
17
|
+
*/
|
|
18
|
+
export type FailoverStrategy = "automatic" | "manual" | "weighted";
|
|
19
|
+
/**
|
|
20
|
+
* Mesh region
|
|
21
|
+
*/
|
|
22
|
+
export interface MeshRegion extends Timestamps {
|
|
23
|
+
id: string;
|
|
24
|
+
name: string;
|
|
25
|
+
provider: "aws" | "gcp" | "cloudflare" | "custom";
|
|
26
|
+
location: string;
|
|
27
|
+
status: RegionStatus;
|
|
28
|
+
latency_ms: number;
|
|
29
|
+
capacity_percent: number;
|
|
30
|
+
stream_count: number;
|
|
31
|
+
viewer_count: number;
|
|
32
|
+
is_primary: boolean;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Mesh peer connection between regions
|
|
36
|
+
*/
|
|
37
|
+
export interface MeshPeer {
|
|
38
|
+
id: string;
|
|
39
|
+
region_id: string;
|
|
40
|
+
endpoint: string;
|
|
41
|
+
status: "connected" | "disconnected" | "syncing";
|
|
42
|
+
last_sync_at: string;
|
|
43
|
+
replication_lag_ms: number;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Failover policy
|
|
47
|
+
*/
|
|
48
|
+
export interface FailoverPolicy extends Timestamps {
|
|
49
|
+
id: string;
|
|
50
|
+
organization_id: string;
|
|
51
|
+
name: string;
|
|
52
|
+
strategy: FailoverStrategy;
|
|
53
|
+
primary_region: string;
|
|
54
|
+
fallback_regions: string[];
|
|
55
|
+
health_check_interval_ms: number;
|
|
56
|
+
failover_threshold: number;
|
|
57
|
+
auto_failback: boolean;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Failover event record
|
|
61
|
+
*/
|
|
62
|
+
export interface FailoverEvent {
|
|
63
|
+
id: string;
|
|
64
|
+
policy_id: string;
|
|
65
|
+
type: "failover" | "failback" | "manual_switch";
|
|
66
|
+
from_region: string;
|
|
67
|
+
to_region: string;
|
|
68
|
+
reason: string;
|
|
69
|
+
duration_ms: number;
|
|
70
|
+
timestamp: string;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Replication status between two regions
|
|
74
|
+
*/
|
|
75
|
+
export interface ReplicationStatus {
|
|
76
|
+
source_region: string;
|
|
77
|
+
target_region: string;
|
|
78
|
+
status: "synced" | "lagging" | "stale";
|
|
79
|
+
lag_ms: number;
|
|
80
|
+
last_sync_at: string;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Full mesh topology snapshot
|
|
84
|
+
*/
|
|
85
|
+
export interface MeshTopology {
|
|
86
|
+
regions: MeshRegion[];
|
|
87
|
+
peers: MeshPeer[];
|
|
88
|
+
policies: FailoverPolicy[];
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Create a failover policy
|
|
92
|
+
*/
|
|
93
|
+
export interface CreatePolicyRequest {
|
|
94
|
+
name: string;
|
|
95
|
+
strategy: FailoverStrategy;
|
|
96
|
+
primary_region: string;
|
|
97
|
+
fallback_regions: string[];
|
|
98
|
+
health_check_interval_ms?: number;
|
|
99
|
+
failover_threshold?: number;
|
|
100
|
+
auto_failback?: boolean;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* List regions filters
|
|
104
|
+
*/
|
|
105
|
+
export interface ListRegionsParams extends PaginationParams {
|
|
106
|
+
status?: RegionStatus;
|
|
107
|
+
provider?: "aws" | "gcp" | "cloudflare" | "custom";
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Mesh API client
|
|
111
|
+
*
|
|
112
|
+
* All operations require appropriate permissions. Authorization is enforced
|
|
113
|
+
* server-side - the API returns 403 if the authenticated user lacks access.
|
|
114
|
+
*
|
|
115
|
+
* @example
|
|
116
|
+
* ```typescript
|
|
117
|
+
* import { WaveClient } from '@wave/sdk';
|
|
118
|
+
* import { MeshAPI } from '@wave/sdk/mesh';
|
|
119
|
+
*
|
|
120
|
+
* const client = new WaveClient({ apiKey: 'your-api-key' });
|
|
121
|
+
* const mesh = new MeshAPI(client);
|
|
122
|
+
*
|
|
123
|
+
* // Get the full mesh topology
|
|
124
|
+
* const topology = await mesh.getTopology();
|
|
125
|
+
* console.log('Regions:', topology.regions.length);
|
|
126
|
+
*
|
|
127
|
+
* // Create a failover policy
|
|
128
|
+
* const policy = await mesh.createPolicy({
|
|
129
|
+
* name: 'US West Failover',
|
|
130
|
+
* strategy: 'automatic',
|
|
131
|
+
* primary_region: 'us-west-2',
|
|
132
|
+
* fallback_regions: ['us-east-1', 'eu-west-1'],
|
|
133
|
+
* failover_threshold: 3,
|
|
134
|
+
* auto_failback: true,
|
|
135
|
+
* });
|
|
136
|
+
*
|
|
137
|
+
* // Trigger manual failover
|
|
138
|
+
* await mesh.triggerFailover(policy.id, 'us-east-1');
|
|
139
|
+
* ```
|
|
140
|
+
*/
|
|
141
|
+
export declare class MeshAPI {
|
|
142
|
+
private readonly client;
|
|
143
|
+
private readonly basePath;
|
|
144
|
+
constructor(client: WaveClient);
|
|
145
|
+
/**
|
|
146
|
+
* List mesh regions with optional filters
|
|
147
|
+
*
|
|
148
|
+
* Requires: mesh:read permission
|
|
149
|
+
*/
|
|
150
|
+
listRegions(params?: ListRegionsParams): Promise<PaginatedResponse<MeshRegion>>;
|
|
151
|
+
/**
|
|
152
|
+
* Get a region by ID
|
|
153
|
+
*
|
|
154
|
+
* Requires: mesh:read permission
|
|
155
|
+
*/
|
|
156
|
+
getRegion(regionId: string): Promise<MeshRegion>;
|
|
157
|
+
/**
|
|
158
|
+
* Get health details for a region
|
|
159
|
+
*
|
|
160
|
+
* Requires: mesh:read permission
|
|
161
|
+
*/
|
|
162
|
+
getRegionHealth(regionId: string): Promise<{
|
|
163
|
+
status: RegionStatus;
|
|
164
|
+
latency_ms: number;
|
|
165
|
+
details: Record<string, unknown>;
|
|
166
|
+
}>;
|
|
167
|
+
/**
|
|
168
|
+
* List mesh peers, optionally filtered by region
|
|
169
|
+
*
|
|
170
|
+
* Requires: mesh:read permission
|
|
171
|
+
*/
|
|
172
|
+
listPeers(regionId?: string): Promise<MeshPeer[]>;
|
|
173
|
+
/**
|
|
174
|
+
* Add a peer to a region
|
|
175
|
+
*
|
|
176
|
+
* Requires: mesh:create permission
|
|
177
|
+
*/
|
|
178
|
+
addPeer(regionId: string, endpoint: string): Promise<MeshPeer>;
|
|
179
|
+
/**
|
|
180
|
+
* Remove a peer
|
|
181
|
+
*
|
|
182
|
+
* Requires: mesh:remove permission (server-side RBAC enforced)
|
|
183
|
+
*/
|
|
184
|
+
removePeer(peerId: string): Promise<void>;
|
|
185
|
+
/**
|
|
186
|
+
* Create a failover policy
|
|
187
|
+
*
|
|
188
|
+
* Requires: mesh:create permission
|
|
189
|
+
*/
|
|
190
|
+
createPolicy(request: CreatePolicyRequest): Promise<FailoverPolicy>;
|
|
191
|
+
/**
|
|
192
|
+
* Update a failover policy
|
|
193
|
+
*
|
|
194
|
+
* Requires: mesh:update permission
|
|
195
|
+
*/
|
|
196
|
+
updatePolicy(policyId: string, updates: Partial<CreatePolicyRequest>): Promise<FailoverPolicy>;
|
|
197
|
+
/**
|
|
198
|
+
* Remove a failover policy
|
|
199
|
+
*
|
|
200
|
+
* Requires: mesh:remove permission (server-side RBAC enforced)
|
|
201
|
+
*/
|
|
202
|
+
removePolicy(policyId: string): Promise<void>;
|
|
203
|
+
/**
|
|
204
|
+
* List failover policies
|
|
205
|
+
*
|
|
206
|
+
* Requires: mesh:read permission
|
|
207
|
+
*/
|
|
208
|
+
listPolicies(params?: PaginationParams): Promise<PaginatedResponse<FailoverPolicy>>;
|
|
209
|
+
/**
|
|
210
|
+
* Trigger a manual failover to a target region
|
|
211
|
+
*
|
|
212
|
+
* Requires: mesh:failover permission
|
|
213
|
+
*/
|
|
214
|
+
triggerFailover(policyId: string, targetRegion: string): Promise<FailoverEvent>;
|
|
215
|
+
/**
|
|
216
|
+
* Get failover event history for a policy
|
|
217
|
+
*
|
|
218
|
+
* Requires: mesh:read permission
|
|
219
|
+
*/
|
|
220
|
+
getFailoverHistory(policyId: string, params?: PaginationParams): Promise<PaginatedResponse<FailoverEvent>>;
|
|
221
|
+
/**
|
|
222
|
+
* Get replication status between regions
|
|
223
|
+
*
|
|
224
|
+
* Requires: mesh:read permission
|
|
225
|
+
*/
|
|
226
|
+
getReplicationStatus(sourceRegion?: string, targetRegion?: string): Promise<ReplicationStatus[]>;
|
|
227
|
+
/**
|
|
228
|
+
* Get the full mesh topology (regions, peers, and policies)
|
|
229
|
+
*
|
|
230
|
+
* Requires: mesh:read permission
|
|
231
|
+
*/
|
|
232
|
+
getTopology(): Promise<MeshTopology>;
|
|
233
|
+
}
|
|
234
|
+
/**
|
|
235
|
+
* Create a Mesh API instance
|
|
236
|
+
*/
|
|
237
|
+
export declare function createMeshAPI(client: WaveClient): MeshAPI;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mesh.d.ts","sourceRoot":"","sources":["../src/mesh.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WAVE SDK - Notifications API
|
|
3
|
+
*
|
|
4
|
+
* User notification preferences, delivery channels, and notification management.
|
|
5
|
+
*/
|
|
6
|
+
import type { WaveClient, PaginationParams, PaginatedResponse, Timestamps } from "./client";
|
|
7
|
+
export type NotificationChannel = "in_app" | "email" | "push" | "sms" | "slack" | "webhook";
|
|
8
|
+
export type NotificationStatus = "unread" | "read" | "archived";
|
|
9
|
+
export type NotificationPriority = "low" | "normal" | "high" | "urgent";
|
|
10
|
+
export interface Notification extends Timestamps {
|
|
11
|
+
id: string;
|
|
12
|
+
user_id: string;
|
|
13
|
+
type: string;
|
|
14
|
+
title: string;
|
|
15
|
+
body: string;
|
|
16
|
+
status: NotificationStatus;
|
|
17
|
+
priority: NotificationPriority;
|
|
18
|
+
channel: NotificationChannel;
|
|
19
|
+
action_url?: string;
|
|
20
|
+
metadata?: Record<string, unknown>;
|
|
21
|
+
read_at?: string;
|
|
22
|
+
}
|
|
23
|
+
export interface NotificationPreferences {
|
|
24
|
+
user_id: string;
|
|
25
|
+
channels: Record<NotificationChannel, boolean>;
|
|
26
|
+
categories: Record<string, {
|
|
27
|
+
enabled: boolean;
|
|
28
|
+
channels: NotificationChannel[];
|
|
29
|
+
}>;
|
|
30
|
+
quiet_hours?: {
|
|
31
|
+
start: string;
|
|
32
|
+
end: string;
|
|
33
|
+
timezone: string;
|
|
34
|
+
};
|
|
35
|
+
digest_frequency?: "realtime" | "hourly" | "daily" | "weekly";
|
|
36
|
+
}
|
|
37
|
+
export interface ListNotificationsParams extends PaginationParams {
|
|
38
|
+
status?: NotificationStatus;
|
|
39
|
+
type?: string;
|
|
40
|
+
priority?: NotificationPriority;
|
|
41
|
+
channel?: NotificationChannel;
|
|
42
|
+
since?: string;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* User notification management: preferences, channels, read state, and delivery.
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* ```typescript
|
|
49
|
+
* const notifications = await wave.notifications.list({ status: 'unread' });
|
|
50
|
+
* await wave.notifications.markAsRead(notifications.data[0].id);
|
|
51
|
+
* await wave.notifications.markAllRead();
|
|
52
|
+
* const prefs = await wave.notifications.getPreferences();
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
export declare class NotificationsAPI {
|
|
56
|
+
private readonly client;
|
|
57
|
+
private readonly basePath;
|
|
58
|
+
constructor(client: WaveClient);
|
|
59
|
+
/** List notifications with optional filters. */
|
|
60
|
+
list(params?: ListNotificationsParams): Promise<PaginatedResponse<Notification>>;
|
|
61
|
+
/** Get a single notification by ID. */
|
|
62
|
+
get(notificationId: string): Promise<Notification>;
|
|
63
|
+
/** Mark a notification as read. */
|
|
64
|
+
markAsRead(notificationId: string): Promise<Notification>;
|
|
65
|
+
/** Mark all notifications as read. */
|
|
66
|
+
markAllRead(): Promise<{
|
|
67
|
+
updated: number;
|
|
68
|
+
}>;
|
|
69
|
+
/** Archive a notification. */
|
|
70
|
+
archive(notificationId: string): Promise<Notification>;
|
|
71
|
+
/** Delete a notification. */
|
|
72
|
+
remove(notificationId: string): Promise<void>;
|
|
73
|
+
/** Get unread count. */
|
|
74
|
+
getUnreadCount(): Promise<{
|
|
75
|
+
count: number;
|
|
76
|
+
}>;
|
|
77
|
+
/** Get notification preferences. */
|
|
78
|
+
getPreferences(): Promise<NotificationPreferences>;
|
|
79
|
+
/** Update notification preferences. */
|
|
80
|
+
updatePreferences(preferences: Partial<NotificationPreferences>): Promise<NotificationPreferences>;
|
|
81
|
+
}
|
|
82
|
+
export declare function createNotificationsAPI(client: WaveClient): NotificationsAPI;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notifications.d.ts","sourceRoot":"","sources":["../src/notifications.ts"],"names":[],"mappings":"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"}
|