@tangle-network/agent-app 0.28.0 → 0.29.0

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.
Files changed (39) hide show
  1. package/dist/{DesignCanvasEditor-TN7CWUJW.js → DesignCanvasEditor-IB2FMBBD.js} +3 -3
  2. package/dist/InviteAcceptPage-EUOGZO2X.js +7 -0
  3. package/dist/InviteAcceptPage-EUOGZO2X.js.map +1 -0
  4. package/dist/MembersPanel-4CGUQRPF.js +8 -0
  5. package/dist/MembersPanel-4CGUQRPF.js.map +1 -0
  6. package/dist/access-ChAHG4Tp.d.ts +539 -0
  7. package/dist/chunk-3G334FVA.js +162 -0
  8. package/dist/chunk-3G334FVA.js.map +1 -0
  9. package/dist/chunk-3SVAA3MA.js +41 -0
  10. package/dist/chunk-3SVAA3MA.js.map +1 -0
  11. package/dist/chunk-535V6BH6.js +128 -0
  12. package/dist/chunk-535V6BH6.js.map +1 -0
  13. package/dist/chunk-63CE7FEZ.js +63 -0
  14. package/dist/chunk-63CE7FEZ.js.map +1 -0
  15. package/dist/{chunk-7I37CO5D.js → chunk-N4ZFKQ5C.js} +4 -4
  16. package/dist/{chunk-J7JNV5BH.js → chunk-S5CAJX6O.js} +2 -2
  17. package/dist/design-canvas-react/index.js +3 -3
  18. package/dist/design-canvas-react/lazy.js +1 -1
  19. package/dist/index.js +7 -7
  20. package/dist/roles-CLtYKHHl.d.ts +49 -0
  21. package/dist/teams/drizzle.d.ts +42 -0
  22. package/dist/teams/drizzle.js +194 -0
  23. package/dist/teams/drizzle.js.map +1 -0
  24. package/dist/teams/index.d.ts +44 -0
  25. package/dist/teams/index.js +39 -0
  26. package/dist/teams/index.js.map +1 -0
  27. package/dist/teams/members-api.d.ts +152 -0
  28. package/dist/teams/members-api.js +261 -0
  29. package/dist/teams/members-api.js.map +1 -0
  30. package/dist/teams-react/index.d.ts +81 -0
  31. package/dist/teams-react/index.js +12 -0
  32. package/dist/teams-react/index.js.map +1 -0
  33. package/dist/teams-react/lazy.d.ts +9 -0
  34. package/dist/teams-react/lazy.js +13 -0
  35. package/dist/teams-react/lazy.js.map +1 -0
  36. package/package.json +26 -1
  37. /package/dist/{DesignCanvasEditor-TN7CWUJW.js.map → DesignCanvasEditor-IB2FMBBD.js.map} +0 -0
  38. /package/dist/{chunk-7I37CO5D.js.map → chunk-N4ZFKQ5C.js.map} +0 -0
  39. /package/dist/{chunk-J7JNV5BH.js.map → chunk-S5CAJX6O.js.map} +0 -0
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  DesignCanvasEditor
3
- } from "./chunk-7I37CO5D.js";
3
+ } from "./chunk-N4ZFKQ5C.js";
4
4
  import "./chunk-YEWTVDDT.js";
5
5
  import "./chunk-V5XZKHCL.js";
6
6
  import "./chunk-XWJXZ6WE.js";
7
- import "./chunk-M2EBUDZ7.js";
8
7
  import "./chunk-Y2SZVW35.js";
8
+ import "./chunk-M2EBUDZ7.js";
9
9
  import "./chunk-HFC4BTWJ.js";
10
10
  export {
11
11
  DesignCanvasEditor
12
12
  };
13
- //# sourceMappingURL=DesignCanvasEditor-TN7CWUJW.js.map
13
+ //# sourceMappingURL=DesignCanvasEditor-IB2FMBBD.js.map
@@ -0,0 +1,7 @@
1
+ import {
2
+ InviteAcceptPage
3
+ } from "./chunk-535V6BH6.js";
4
+ export {
5
+ InviteAcceptPage
6
+ };
7
+ //# sourceMappingURL=InviteAcceptPage-EUOGZO2X.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,8 @@
1
+ import {
2
+ MembersPanel
3
+ } from "./chunk-3G334FVA.js";
4
+ import "./chunk-63CE7FEZ.js";
5
+ export {
6
+ MembersPanel
7
+ };
8
+ //# sourceMappingURL=MembersPanel-4CGUQRPF.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,539 @@
1
+ import * as drizzle_orm_sqlite_core from 'drizzle-orm/sqlite-core';
2
+ import { AnySQLiteTable, AnySQLiteColumn, BaseSQLiteDatabase } from 'drizzle-orm/sqlite-core';
3
+ import { O as OrganizationRole, f as WorkspaceRole } from './roles-CLtYKHHl.js';
4
+
5
+ /** A product table referenced by FK — only the `id` column is touched. */
6
+ type TeamParentTable = AnySQLiteTable & {
7
+ id: AnySQLiteColumn;
8
+ };
9
+ interface CreateTeamTablesOptions {
10
+ /** The product's user table — org/member rows reference `userTable.id`. */
11
+ userTable: TeamParentTable;
12
+ /** The product's workspace table — workspace members reference `workspaceTable.id`. */
13
+ workspaceTable: TeamParentTable;
14
+ }
15
+ declare function createTeamTables(opts: CreateTeamTablesOptions): {
16
+ organizations: drizzle_orm_sqlite_core.SQLiteTableWithColumns<{
17
+ name: "organization";
18
+ schema: undefined;
19
+ columns: {
20
+ id: drizzle_orm_sqlite_core.SQLiteColumn<{
21
+ name: "id";
22
+ tableName: "organization";
23
+ dataType: "string";
24
+ columnType: "SQLiteText";
25
+ data: string;
26
+ driverParam: string;
27
+ notNull: true;
28
+ hasDefault: true;
29
+ isPrimaryKey: true;
30
+ isAutoincrement: false;
31
+ hasRuntimeDefault: false;
32
+ enumValues: [string, ...string[]];
33
+ baseColumn: never;
34
+ identity: undefined;
35
+ generated: undefined;
36
+ }, {}, {
37
+ length: number | undefined;
38
+ }>;
39
+ name: drizzle_orm_sqlite_core.SQLiteColumn<{
40
+ name: "name";
41
+ tableName: "organization";
42
+ dataType: "string";
43
+ columnType: "SQLiteText";
44
+ data: string;
45
+ driverParam: string;
46
+ notNull: true;
47
+ hasDefault: false;
48
+ isPrimaryKey: false;
49
+ isAutoincrement: false;
50
+ hasRuntimeDefault: false;
51
+ enumValues: [string, ...string[]];
52
+ baseColumn: never;
53
+ identity: undefined;
54
+ generated: undefined;
55
+ }, {}, {
56
+ length: number | undefined;
57
+ }>;
58
+ slug: drizzle_orm_sqlite_core.SQLiteColumn<{
59
+ name: "slug";
60
+ tableName: "organization";
61
+ dataType: "string";
62
+ columnType: "SQLiteText";
63
+ data: string;
64
+ driverParam: string;
65
+ notNull: true;
66
+ hasDefault: false;
67
+ isPrimaryKey: false;
68
+ isAutoincrement: false;
69
+ hasRuntimeDefault: false;
70
+ enumValues: [string, ...string[]];
71
+ baseColumn: never;
72
+ identity: undefined;
73
+ generated: undefined;
74
+ }, {}, {
75
+ length: number | undefined;
76
+ }>;
77
+ kind: drizzle_orm_sqlite_core.SQLiteColumn<{
78
+ name: "kind";
79
+ tableName: "organization";
80
+ dataType: "string";
81
+ columnType: "SQLiteText";
82
+ data: "personal" | "team";
83
+ driverParam: string;
84
+ notNull: true;
85
+ hasDefault: true;
86
+ isPrimaryKey: false;
87
+ isAutoincrement: false;
88
+ hasRuntimeDefault: false;
89
+ enumValues: ["personal", "team"];
90
+ baseColumn: never;
91
+ identity: undefined;
92
+ generated: undefined;
93
+ }, {}, {
94
+ length: number | undefined;
95
+ }>;
96
+ createdBy: drizzle_orm_sqlite_core.SQLiteColumn<{
97
+ name: "created_by";
98
+ tableName: "organization";
99
+ dataType: "string";
100
+ columnType: "SQLiteText";
101
+ data: string;
102
+ driverParam: string;
103
+ notNull: true;
104
+ hasDefault: false;
105
+ isPrimaryKey: false;
106
+ isAutoincrement: false;
107
+ hasRuntimeDefault: false;
108
+ enumValues: [string, ...string[]];
109
+ baseColumn: never;
110
+ identity: undefined;
111
+ generated: undefined;
112
+ }, {}, {
113
+ length: number | undefined;
114
+ }>;
115
+ createdAt: drizzle_orm_sqlite_core.SQLiteColumn<{
116
+ name: "created_at";
117
+ tableName: "organization";
118
+ dataType: "date";
119
+ columnType: "SQLiteTimestamp";
120
+ data: Date;
121
+ driverParam: number;
122
+ notNull: true;
123
+ hasDefault: true;
124
+ isPrimaryKey: false;
125
+ isAutoincrement: false;
126
+ hasRuntimeDefault: false;
127
+ enumValues: undefined;
128
+ baseColumn: never;
129
+ identity: undefined;
130
+ generated: undefined;
131
+ }, {}, {}>;
132
+ updatedAt: drizzle_orm_sqlite_core.SQLiteColumn<{
133
+ name: "updated_at";
134
+ tableName: "organization";
135
+ dataType: "date";
136
+ columnType: "SQLiteTimestamp";
137
+ data: Date;
138
+ driverParam: number;
139
+ notNull: true;
140
+ hasDefault: true;
141
+ isPrimaryKey: false;
142
+ isAutoincrement: false;
143
+ hasRuntimeDefault: false;
144
+ enumValues: undefined;
145
+ baseColumn: never;
146
+ identity: undefined;
147
+ generated: undefined;
148
+ }, {}, {}>;
149
+ };
150
+ dialect: "sqlite";
151
+ }>;
152
+ organizationMembers: drizzle_orm_sqlite_core.SQLiteTableWithColumns<{
153
+ name: "organization_member";
154
+ schema: undefined;
155
+ columns: {
156
+ id: drizzle_orm_sqlite_core.SQLiteColumn<{
157
+ name: "id";
158
+ tableName: "organization_member";
159
+ dataType: "string";
160
+ columnType: "SQLiteText";
161
+ data: string;
162
+ driverParam: string;
163
+ notNull: true;
164
+ hasDefault: true;
165
+ isPrimaryKey: true;
166
+ isAutoincrement: false;
167
+ hasRuntimeDefault: false;
168
+ enumValues: [string, ...string[]];
169
+ baseColumn: never;
170
+ identity: undefined;
171
+ generated: undefined;
172
+ }, {}, {
173
+ length: number | undefined;
174
+ }>;
175
+ organizationId: drizzle_orm_sqlite_core.SQLiteColumn<{
176
+ name: "organization_id";
177
+ tableName: "organization_member";
178
+ dataType: "string";
179
+ columnType: "SQLiteText";
180
+ data: string;
181
+ driverParam: string;
182
+ notNull: true;
183
+ hasDefault: false;
184
+ isPrimaryKey: false;
185
+ isAutoincrement: false;
186
+ hasRuntimeDefault: false;
187
+ enumValues: [string, ...string[]];
188
+ baseColumn: never;
189
+ identity: undefined;
190
+ generated: undefined;
191
+ }, {}, {
192
+ length: number | undefined;
193
+ }>;
194
+ userId: drizzle_orm_sqlite_core.SQLiteColumn<{
195
+ name: "user_id";
196
+ tableName: "organization_member";
197
+ dataType: "string";
198
+ columnType: "SQLiteText";
199
+ data: string;
200
+ driverParam: string;
201
+ notNull: true;
202
+ hasDefault: false;
203
+ isPrimaryKey: false;
204
+ isAutoincrement: false;
205
+ hasRuntimeDefault: false;
206
+ enumValues: [string, ...string[]];
207
+ baseColumn: never;
208
+ identity: undefined;
209
+ generated: undefined;
210
+ }, {}, {
211
+ length: number | undefined;
212
+ }>;
213
+ role: drizzle_orm_sqlite_core.SQLiteColumn<{
214
+ name: "role";
215
+ tableName: "organization_member";
216
+ dataType: "string";
217
+ columnType: "SQLiteText";
218
+ data: "admin" | "owner" | "member" | "billing";
219
+ driverParam: string;
220
+ notNull: true;
221
+ hasDefault: true;
222
+ isPrimaryKey: false;
223
+ isAutoincrement: false;
224
+ hasRuntimeDefault: false;
225
+ enumValues: ["owner", "admin", "member", "billing"];
226
+ baseColumn: never;
227
+ identity: undefined;
228
+ generated: undefined;
229
+ }, {}, {
230
+ length: number | undefined;
231
+ }>;
232
+ createdAt: drizzle_orm_sqlite_core.SQLiteColumn<{
233
+ name: "created_at";
234
+ tableName: "organization_member";
235
+ dataType: "date";
236
+ columnType: "SQLiteTimestamp";
237
+ data: Date;
238
+ driverParam: number;
239
+ notNull: true;
240
+ hasDefault: true;
241
+ isPrimaryKey: false;
242
+ isAutoincrement: false;
243
+ hasRuntimeDefault: false;
244
+ enumValues: undefined;
245
+ baseColumn: never;
246
+ identity: undefined;
247
+ generated: undefined;
248
+ }, {}, {}>;
249
+ updatedAt: drizzle_orm_sqlite_core.SQLiteColumn<{
250
+ name: "updated_at";
251
+ tableName: "organization_member";
252
+ dataType: "date";
253
+ columnType: "SQLiteTimestamp";
254
+ data: Date;
255
+ driverParam: number;
256
+ notNull: true;
257
+ hasDefault: true;
258
+ isPrimaryKey: false;
259
+ isAutoincrement: false;
260
+ hasRuntimeDefault: false;
261
+ enumValues: undefined;
262
+ baseColumn: never;
263
+ identity: undefined;
264
+ generated: undefined;
265
+ }, {}, {}>;
266
+ };
267
+ dialect: "sqlite";
268
+ }>;
269
+ workspaceMembers: drizzle_orm_sqlite_core.SQLiteTableWithColumns<{
270
+ name: "workspace_member";
271
+ schema: undefined;
272
+ columns: {
273
+ id: drizzle_orm_sqlite_core.SQLiteColumn<{
274
+ name: "id";
275
+ tableName: "workspace_member";
276
+ dataType: "string";
277
+ columnType: "SQLiteText";
278
+ data: string;
279
+ driverParam: string;
280
+ notNull: true;
281
+ hasDefault: true;
282
+ isPrimaryKey: true;
283
+ isAutoincrement: false;
284
+ hasRuntimeDefault: false;
285
+ enumValues: [string, ...string[]];
286
+ baseColumn: never;
287
+ identity: undefined;
288
+ generated: undefined;
289
+ }, {}, {
290
+ length: number | undefined;
291
+ }>;
292
+ workspaceId: drizzle_orm_sqlite_core.SQLiteColumn<{
293
+ name: "workspace_id";
294
+ tableName: "workspace_member";
295
+ dataType: "string";
296
+ columnType: "SQLiteText";
297
+ data: string;
298
+ driverParam: string;
299
+ notNull: true;
300
+ hasDefault: false;
301
+ isPrimaryKey: false;
302
+ isAutoincrement: false;
303
+ hasRuntimeDefault: false;
304
+ enumValues: [string, ...string[]];
305
+ baseColumn: never;
306
+ identity: undefined;
307
+ generated: undefined;
308
+ }, {}, {
309
+ length: number | undefined;
310
+ }>;
311
+ organizationMemberId: drizzle_orm_sqlite_core.SQLiteColumn<{
312
+ name: "organization_member_id";
313
+ tableName: "workspace_member";
314
+ dataType: "string";
315
+ columnType: "SQLiteText";
316
+ data: string;
317
+ driverParam: string;
318
+ notNull: false;
319
+ hasDefault: false;
320
+ isPrimaryKey: false;
321
+ isAutoincrement: false;
322
+ hasRuntimeDefault: false;
323
+ enumValues: [string, ...string[]];
324
+ baseColumn: never;
325
+ identity: undefined;
326
+ generated: undefined;
327
+ }, {}, {
328
+ length: number | undefined;
329
+ }>;
330
+ userId: drizzle_orm_sqlite_core.SQLiteColumn<{
331
+ name: "user_id";
332
+ tableName: "workspace_member";
333
+ dataType: "string";
334
+ columnType: "SQLiteText";
335
+ data: string;
336
+ driverParam: string;
337
+ notNull: false;
338
+ hasDefault: false;
339
+ isPrimaryKey: false;
340
+ isAutoincrement: false;
341
+ hasRuntimeDefault: false;
342
+ enumValues: [string, ...string[]];
343
+ baseColumn: never;
344
+ identity: undefined;
345
+ generated: undefined;
346
+ }, {}, {
347
+ length: number | undefined;
348
+ }>;
349
+ role: drizzle_orm_sqlite_core.SQLiteColumn<{
350
+ name: "role";
351
+ tableName: "workspace_member";
352
+ dataType: "string";
353
+ columnType: "SQLiteText";
354
+ data: "viewer" | "editor" | "admin" | "owner";
355
+ driverParam: string;
356
+ notNull: true;
357
+ hasDefault: true;
358
+ isPrimaryKey: false;
359
+ isAutoincrement: false;
360
+ hasRuntimeDefault: false;
361
+ enumValues: ["owner", "admin", "editor", "viewer"];
362
+ baseColumn: never;
363
+ identity: undefined;
364
+ generated: undefined;
365
+ }, {}, {
366
+ length: number | undefined;
367
+ }>;
368
+ invitedBy: drizzle_orm_sqlite_core.SQLiteColumn<{
369
+ name: "invited_by";
370
+ tableName: "workspace_member";
371
+ dataType: "string";
372
+ columnType: "SQLiteText";
373
+ data: string;
374
+ driverParam: string;
375
+ notNull: false;
376
+ hasDefault: false;
377
+ isPrimaryKey: false;
378
+ isAutoincrement: false;
379
+ hasRuntimeDefault: false;
380
+ enumValues: [string, ...string[]];
381
+ baseColumn: never;
382
+ identity: undefined;
383
+ generated: undefined;
384
+ }, {}, {
385
+ length: number | undefined;
386
+ }>;
387
+ inviteEmail: drizzle_orm_sqlite_core.SQLiteColumn<{
388
+ name: "invite_email";
389
+ tableName: "workspace_member";
390
+ dataType: "string";
391
+ columnType: "SQLiteText";
392
+ data: string;
393
+ driverParam: string;
394
+ notNull: false;
395
+ hasDefault: false;
396
+ isPrimaryKey: false;
397
+ isAutoincrement: false;
398
+ hasRuntimeDefault: false;
399
+ enumValues: [string, ...string[]];
400
+ baseColumn: never;
401
+ identity: undefined;
402
+ generated: undefined;
403
+ }, {}, {
404
+ length: number | undefined;
405
+ }>;
406
+ inviteToken: drizzle_orm_sqlite_core.SQLiteColumn<{
407
+ name: "invite_token";
408
+ tableName: "workspace_member";
409
+ dataType: "string";
410
+ columnType: "SQLiteText";
411
+ data: string;
412
+ driverParam: string;
413
+ notNull: false;
414
+ hasDefault: false;
415
+ isPrimaryKey: false;
416
+ isAutoincrement: false;
417
+ hasRuntimeDefault: false;
418
+ enumValues: [string, ...string[]];
419
+ baseColumn: never;
420
+ identity: undefined;
421
+ generated: undefined;
422
+ }, {}, {
423
+ length: number | undefined;
424
+ }>;
425
+ invitedAt: drizzle_orm_sqlite_core.SQLiteColumn<{
426
+ name: "invited_at";
427
+ tableName: "workspace_member";
428
+ dataType: "date";
429
+ columnType: "SQLiteTimestamp";
430
+ data: Date;
431
+ driverParam: number;
432
+ notNull: true;
433
+ hasDefault: true;
434
+ isPrimaryKey: false;
435
+ isAutoincrement: false;
436
+ hasRuntimeDefault: false;
437
+ enumValues: undefined;
438
+ baseColumn: never;
439
+ identity: undefined;
440
+ generated: undefined;
441
+ }, {}, {}>;
442
+ acceptedAt: drizzle_orm_sqlite_core.SQLiteColumn<{
443
+ name: "accepted_at";
444
+ tableName: "workspace_member";
445
+ dataType: "date";
446
+ columnType: "SQLiteTimestamp";
447
+ data: Date;
448
+ driverParam: number;
449
+ notNull: false;
450
+ hasDefault: false;
451
+ isPrimaryKey: false;
452
+ isAutoincrement: false;
453
+ hasRuntimeDefault: false;
454
+ enumValues: undefined;
455
+ baseColumn: never;
456
+ identity: undefined;
457
+ generated: undefined;
458
+ }, {}, {}>;
459
+ };
460
+ dialect: "sqlite";
461
+ }>;
462
+ };
463
+ type TeamTables = ReturnType<typeof createTeamTables>;
464
+ type OrganizationRow = TeamTables['organizations']['$inferSelect'];
465
+ type OrganizationMemberRow = TeamTables['organizationMembers']['$inferSelect'];
466
+ type WorkspaceMemberRow = TeamTables['workspaceMembers']['$inferSelect'];
467
+
468
+ /**
469
+ * RBAC access builders over the teams tables. `createWorkspaceAccess` and
470
+ * `createOrganizationAccess` close over the product's `db`, the tables from
471
+ * `createTeamTables`, and the product's `workspace` table, returning the exact
472
+ * `getWorkspaceAccess` / `requireWorkspaceAccess` / `listUserWorkspaces` /
473
+ * `getOrganizationAccess` / `requireOrganizationAccess` functions a consumer
474
+ * already calls — so adoption is a one-line import swap, every call site stays
475
+ * identical.
476
+ *
477
+ * Defense in depth: org owners/admins are workspace owners across the org;
478
+ * everyone else gets their explicit per-workspace role. Effective role is the
479
+ * fold in `resolveWorkspaceRole` (pure, from `../roles`). Every query pins
480
+ * `userId`, so a leaked id can never read across the tenancy boundary — it
481
+ * surfaces as "not found".
482
+ *
483
+ * Driver-agnostic: builders are awaited, never `.run()`/`.all()`, so
484
+ * better-sqlite3, D1, and libsql handles all behave identically.
485
+ */
486
+
487
+ /** Any SQLite drizzle database — `any` erases driver-specific generics so
488
+ * better-sqlite3, D1, and libsql handles all fit. */
489
+ type TeamDatabase = BaseSQLiteDatabase<'sync' | 'async', any, any>;
490
+ /**
491
+ * The product's workspace table, narrowed to the columns the access joins read.
492
+ * Adopters pass their real drizzle workspace table — it carries these columns
493
+ * (gtm's does); the type only asserts the minimum the joins touch.
494
+ */
495
+ interface WorkspaceAccessTable {
496
+ id: any;
497
+ organizationId: any;
498
+ name: any;
499
+ updatedAt: any;
500
+ }
501
+ interface CreateAccessOptions {
502
+ db: TeamDatabase;
503
+ tables: TeamTables;
504
+ /** The product's workspace table (the FK target passed to createTeamTables). */
505
+ workspaceTable: TeamParentTable & WorkspaceAccessTable;
506
+ }
507
+ interface WorkspaceAccess {
508
+ workspace: Record<string, unknown>;
509
+ organization: OrganizationRow;
510
+ organizationMember: OrganizationMemberRow;
511
+ role: WorkspaceRole;
512
+ }
513
+ interface UserWorkspaceSummary extends Record<string, unknown> {
514
+ organizationId: string;
515
+ organizationName: string;
516
+ role: WorkspaceRole;
517
+ }
518
+ interface WorkspaceAccessApi {
519
+ getWorkspaceAccess(workspaceId: string, userId: string, minRole?: WorkspaceRole): Promise<WorkspaceAccess | null>;
520
+ requireWorkspaceAccess(workspaceId: string, userId: string, minRole?: WorkspaceRole): Promise<WorkspaceAccess>;
521
+ listUserWorkspaces(userId: string): Promise<UserWorkspaceSummary[]>;
522
+ }
523
+ declare function createWorkspaceAccess(opts: CreateAccessOptions): WorkspaceAccessApi;
524
+ interface OrganizationAccess {
525
+ organization: OrganizationRow;
526
+ member: OrganizationMemberRow;
527
+ role: OrganizationRole;
528
+ }
529
+ interface OrganizationAccessApi {
530
+ getOrganizationAccess(organizationId: string, userId: string, minRole?: OrganizationRole): Promise<OrganizationAccess | null>;
531
+ requireOrganizationAccess(organizationId: string, userId: string, minRole?: OrganizationRole): Promise<OrganizationAccess>;
532
+ }
533
+ interface CreateOrganizationAccessOptions {
534
+ db: TeamDatabase;
535
+ tables: TeamTables;
536
+ }
537
+ declare function createOrganizationAccess(opts: CreateOrganizationAccessOptions): OrganizationAccessApi;
538
+
539
+ export { type CreateAccessOptions as C, type OrganizationRow as O, type TeamDatabase as T, type UserWorkspaceSummary as U, type WorkspaceAccess as W, type TeamTables as a, type OrganizationMemberRow as b, type CreateOrganizationAccessOptions as c, type CreateTeamTablesOptions as d, type OrganizationAccess as e, type OrganizationAccessApi as f, type TeamParentTable as g, type WorkspaceAccessApi as h, type WorkspaceAccessTable as i, type WorkspaceMemberRow as j, createOrganizationAccess as k, createTeamTables as l, createWorkspaceAccess as m };