@affectively/dash 5.4.1 → 5.4.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.
Files changed (92) hide show
  1. package/README.md +8 -189
  2. package/dist/automerge_wasm_bg-4hg5vg2g.wasm +0 -0
  3. package/dist/engine/sqlite.d.ts +30 -0
  4. package/dist/engine/vec_extension.d.ts +2 -0
  5. package/dist/index.d.ts +73 -0
  6. package/dist/index.js +53895 -0
  7. package/dist/middleware/errorHandler.d.ts +60 -0
  8. package/dist/{src/sync → sync}/AeonDurableSync.d.ts +7 -9
  9. package/dist/sync/AeonDurableSync.js +1984 -0
  10. package/dist/{src/sync → sync}/AutomergeProvider.d.ts +8 -8
  11. package/dist/sync/AutomergeProvider.js +4421 -0
  12. package/dist/sync/HybridProvider.d.ts +124 -0
  13. package/dist/sync/HybridProvider.js +8328 -0
  14. package/dist/sync/connection/WebRTCConnection.d.ts +23 -0
  15. package/dist/sync/connection/WebRTCConnection.js +59 -0
  16. package/dist/sync/index.d.ts +13 -0
  17. package/dist/sync/index.js +12773 -0
  18. package/dist/sync/provider/YjsSqliteProvider.d.ts +17 -0
  19. package/dist/sync/provider/YjsSqliteProvider.js +54 -0
  20. package/dist/sync/types.d.ts +74 -0
  21. package/dist/sync/webtransport/WebTransportProvider.d.ts +16 -0
  22. package/dist/sync/webtransport/WebTransportProvider.js +55 -0
  23. package/package.json +62 -70
  24. package/dist/src/api/firebase/auth/index.d.ts +0 -137
  25. package/dist/src/api/firebase/auth/index.js +0 -352
  26. package/dist/src/api/firebase/auth/providers.d.ts +0 -254
  27. package/dist/src/api/firebase/auth/providers.js +0 -518
  28. package/dist/src/api/firebase/database/index.d.ts +0 -108
  29. package/dist/src/api/firebase/database/index.js +0 -368
  30. package/dist/src/api/firebase/errors.d.ts +0 -15
  31. package/dist/src/api/firebase/errors.js +0 -215
  32. package/dist/src/api/firebase/firestore/data-types.d.ts +0 -116
  33. package/dist/src/api/firebase/firestore/data-types.js +0 -280
  34. package/dist/src/api/firebase/firestore/index.d.ts +0 -7
  35. package/dist/src/api/firebase/firestore/index.js +0 -13
  36. package/dist/src/api/firebase/firestore/listeners.d.ts +0 -20
  37. package/dist/src/api/firebase/firestore/listeners.js +0 -50
  38. package/dist/src/api/firebase/firestore/operations.d.ts +0 -123
  39. package/dist/src/api/firebase/firestore/operations.js +0 -490
  40. package/dist/src/api/firebase/firestore/query.d.ts +0 -118
  41. package/dist/src/api/firebase/firestore/query.js +0 -418
  42. package/dist/src/api/firebase/index.d.ts +0 -11
  43. package/dist/src/api/firebase/index.js +0 -17
  44. package/dist/src/api/firebase/storage/index.d.ts +0 -100
  45. package/dist/src/api/firebase/storage/index.js +0 -286
  46. package/dist/src/api/firebase/types.d.ts +0 -341
  47. package/dist/src/api/firebase/types.js +0 -4
  48. package/dist/src/auth/manager.d.ts +0 -182
  49. package/dist/src/auth/manager.js +0 -598
  50. package/dist/src/engine/ai.js +0 -76
  51. package/dist/src/engine/sqlite.d.ts +0 -353
  52. package/dist/src/engine/sqlite.js +0 -1328
  53. package/dist/src/engine/vec_extension.d.ts +0 -5
  54. package/dist/src/engine/vec_extension.js +0 -10
  55. package/dist/src/index.d.ts +0 -21
  56. package/dist/src/index.js +0 -26
  57. package/dist/src/mcp/server.js +0 -87
  58. package/dist/src/reactivity/signal.js +0 -31
  59. package/dist/src/schema/lens.d.ts +0 -29
  60. package/dist/src/schema/lens.js +0 -122
  61. package/dist/src/sync/AeonDurableSync.js +0 -133
  62. package/dist/src/sync/AutomergeProvider.js +0 -153
  63. package/dist/src/sync/aeon/config.d.ts +0 -21
  64. package/dist/src/sync/aeon/config.js +0 -14
  65. package/dist/src/sync/aeon/delta-adapter.d.ts +0 -62
  66. package/dist/src/sync/aeon/delta-adapter.js +0 -98
  67. package/dist/src/sync/aeon/index.d.ts +0 -18
  68. package/dist/src/sync/aeon/index.js +0 -19
  69. package/dist/src/sync/aeon/offline-adapter.d.ts +0 -110
  70. package/dist/src/sync/aeon/offline-adapter.js +0 -227
  71. package/dist/src/sync/aeon/presence-adapter.d.ts +0 -114
  72. package/dist/src/sync/aeon/presence-adapter.js +0 -157
  73. package/dist/src/sync/aeon/schema-adapter.d.ts +0 -95
  74. package/dist/src/sync/aeon/schema-adapter.js +0 -163
  75. package/dist/src/sync/backup.d.ts +0 -12
  76. package/dist/src/sync/backup.js +0 -44
  77. package/dist/src/sync/connection.d.ts +0 -20
  78. package/dist/src/sync/connection.js +0 -50
  79. package/dist/src/sync/d1-provider.d.ts +0 -103
  80. package/dist/src/sync/d1-provider.js +0 -418
  81. package/dist/src/sync/hybrid-provider.d.ts +0 -307
  82. package/dist/src/sync/hybrid-provider.js +0 -1353
  83. package/dist/src/sync/provider.d.ts +0 -11
  84. package/dist/src/sync/provider.js +0 -67
  85. package/dist/src/sync/types.d.ts +0 -32
  86. package/dist/src/sync/types.js +0 -4
  87. package/dist/src/sync/verify.d.ts +0 -1
  88. package/dist/src/sync/verify.js +0 -23
  89. package/dist/tsconfig.tsbuildinfo +0 -1
  90. /package/dist/{src/engine → engine}/ai.d.ts +0 -0
  91. /package/dist/{src/mcp → mcp}/server.d.ts +0 -0
  92. /package/dist/{src/reactivity → reactivity}/signal.d.ts +0 -0
@@ -0,0 +1,17 @@
1
+ /**
2
+ * YjsSqliteProvider - v4.0.0 API
3
+ * Native SQLite storage for Yjs document persistence
4
+ */
5
+ import * as Y from 'yjs';
6
+ export declare class YjsSqliteProvider {
7
+ private doc;
8
+ private dbPath?;
9
+ private _whenSynced?;
10
+ constructor(doc: Y.Doc, dbPath?: string);
11
+ private initialize;
12
+ connect(): Promise<void>;
13
+ disconnect(): Promise<void>;
14
+ flush(): Promise<void>;
15
+ destroy(): Promise<void>;
16
+ get whenSynced(): Promise<void> | undefined;
17
+ }
@@ -0,0 +1,54 @@
1
+ var __create = Object.create;
2
+ var __getProtoOf = Object.getPrototypeOf;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __toESM = (mod, isNodeMode, target) => {
7
+ target = mod != null ? __create(__getProtoOf(mod)) : {};
8
+ const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
9
+ for (let key of __getOwnPropNames(mod))
10
+ if (!__hasOwnProp.call(to, key))
11
+ __defProp(to, key, {
12
+ get: () => mod[key],
13
+ enumerable: true
14
+ });
15
+ return to;
16
+ };
17
+ var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
18
+ var __export = (target, all) => {
19
+ for (var name in all)
20
+ __defProp(target, name, {
21
+ get: all[name],
22
+ enumerable: true,
23
+ configurable: true,
24
+ set: (newValue) => all[name] = () => newValue
25
+ });
26
+ };
27
+ var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
28
+
29
+ // src/sync/provider/YjsSqliteProvider.ts
30
+ class YjsSqliteProvider {
31
+ doc;
32
+ dbPath;
33
+ _whenSynced;
34
+ constructor(doc, dbPath) {
35
+ this.doc = doc;
36
+ this.dbPath = dbPath;
37
+ this._whenSynced = this.initialize();
38
+ }
39
+ async initialize() {
40
+ await new Promise((resolve) => setTimeout(resolve, 100));
41
+ }
42
+ async connect() {}
43
+ async disconnect() {}
44
+ async flush() {}
45
+ async destroy() {
46
+ await this.disconnect();
47
+ }
48
+ get whenSynced() {
49
+ return this._whenSynced;
50
+ }
51
+ }
52
+ export {
53
+ YjsSqliteProvider
54
+ };
@@ -0,0 +1,74 @@
1
+ /**
2
+ * Dash sync module types
3
+ */
4
+ export interface HybridProviderConfig {
5
+ websocket?: {
6
+ url: string;
7
+ };
8
+ webtransport?: {
9
+ url: string;
10
+ };
11
+ roomName: string;
12
+ apiKey?: string;
13
+ ucanToken?: string;
14
+ discovery?: {
15
+ url?: string;
16
+ bootstrap?: string[];
17
+ announce?: boolean;
18
+ announceIntervalMs?: number;
19
+ };
20
+ performance?: {
21
+ compressionThresholdBytes?: number;
22
+ batchIntervalMs?: number;
23
+ maxBatchSize?: number;
24
+ };
25
+ privacy?: {
26
+ roomKey?: string;
27
+ };
28
+ aeon?: {
29
+ enabled?: boolean;
30
+ persistenceKeyPrefix?: string;
31
+ };
32
+ }
33
+ export interface SyncConnectionConfig {
34
+ url: string;
35
+ protocol?: 'websocket' | 'webtransport';
36
+ roomName: string;
37
+ doc: any;
38
+ }
39
+ export interface WebRTCConnectionConfig {
40
+ signalingServer?: string;
41
+ iceServers?: RTCIceServer[];
42
+ password?: string;
43
+ }
44
+ export interface AutomergeProviderConfig {
45
+ websocket?: {
46
+ url: string;
47
+ };
48
+ webtransport?: {
49
+ url: string;
50
+ };
51
+ roomName: string;
52
+ /** DashRelay API key (format: dr_<64-hex>) */
53
+ apiKey?: string;
54
+ /** UCAN bearer token */
55
+ ucanToken?: string;
56
+ discovery?: {
57
+ url?: string;
58
+ bootstrap?: string[];
59
+ announce?: boolean;
60
+ announceIntervalMs?: number;
61
+ };
62
+ performance?: {
63
+ compressionThresholdBytes?: number;
64
+ batchIntervalMs?: number;
65
+ maxBatchSize?: number;
66
+ };
67
+ privacy?: {
68
+ roomKey?: string;
69
+ };
70
+ aeon?: {
71
+ enabled?: boolean;
72
+ persistenceKeyPrefix?: string;
73
+ };
74
+ }
@@ -0,0 +1,16 @@
1
+ /**
2
+ * WebTransportProvider - Legacy (may be deprecated in v4.0.0)
3
+ * Use HybridProvider or SyncConnection instead
4
+ */
5
+ export declare class WebTransportProvider {
6
+ private _doc;
7
+ private _url;
8
+ private _roomName;
9
+ private _ready;
10
+ constructor(doc: any, url: string, roomName: string);
11
+ private initialize;
12
+ get ready(): Promise<void>;
13
+ get roomName(): string;
14
+ destroy(): void;
15
+ disconnect(): void;
16
+ }
@@ -0,0 +1,55 @@
1
+ var __create = Object.create;
2
+ var __getProtoOf = Object.getPrototypeOf;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __toESM = (mod, isNodeMode, target) => {
7
+ target = mod != null ? __create(__getProtoOf(mod)) : {};
8
+ const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
9
+ for (let key of __getOwnPropNames(mod))
10
+ if (!__hasOwnProp.call(to, key))
11
+ __defProp(to, key, {
12
+ get: () => mod[key],
13
+ enumerable: true
14
+ });
15
+ return to;
16
+ };
17
+ var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
18
+ var __export = (target, all) => {
19
+ for (var name in all)
20
+ __defProp(target, name, {
21
+ get: all[name],
22
+ enumerable: true,
23
+ configurable: true,
24
+ set: (newValue) => all[name] = () => newValue
25
+ });
26
+ };
27
+ var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
28
+
29
+ // src/sync/webtransport/WebTransportProvider.ts
30
+ class WebTransportProvider {
31
+ _doc;
32
+ _url;
33
+ _roomName;
34
+ _ready;
35
+ constructor(doc, url, roomName) {
36
+ this._doc = doc;
37
+ this._url = url;
38
+ this._roomName = roomName;
39
+ this._ready = this.initialize();
40
+ }
41
+ async initialize() {
42
+ await new Promise((resolve) => setTimeout(resolve, 100));
43
+ }
44
+ get ready() {
45
+ return this._ready;
46
+ }
47
+ get roomName() {
48
+ return this._roomName;
49
+ }
50
+ destroy() {}
51
+ disconnect() {}
52
+ }
53
+ export {
54
+ WebTransportProvider
55
+ };
package/package.json CHANGED
@@ -1,100 +1,92 @@
1
1
  {
2
2
  "name": "@affectively/dash",
3
- "version": "5.4.1",
4
- "description": "The Local-First, AI-Native Database for the Web. Featuring WASM SQLite, Vector Embeddings, and MCP support.",
3
+ "version": "5.4.5",
4
+ "description": "Multi-layer edge storage and CRDT sync engine Yjs, Automerge, WebSocket, WebTransport, and WebRTC",
5
5
  "type": "module",
6
- "main": "./dist/src/index.js",
7
- "types": "./dist/src/index.d.ts",
8
- "files": [
9
- "dist"
10
- ],
6
+ "sideEffects": false,
7
+ "main": "./dist/index.js",
8
+ "types": "./dist/index.d.ts",
11
9
  "exports": {
12
10
  ".": {
13
- "types": "./dist/src/index.d.ts",
14
- "import": "./dist/src/index.js",
15
- "default": "./dist/src/index.js"
16
- },
17
- "./sync": {
18
- "types": "./dist/src/sync/hybrid-provider.d.ts",
19
- "import": "./dist/src/sync/hybrid-provider.js",
20
- "default": "./dist/src/sync/hybrid-provider.js"
11
+ "import": "./dist/index.js",
12
+ "types": "./dist/index.d.ts"
21
13
  },
22
14
  "./src/sync": {
23
- "types": "./dist/src/sync/hybrid-provider.d.ts",
24
- "import": "./dist/src/sync/hybrid-provider.js",
25
- "default": "./dist/src/sync/hybrid-provider.js"
15
+ "import": "./dist/sync/index.js",
16
+ "types": "./dist/sync/index.d.ts",
17
+ "default": "./dist/sync/index.js"
26
18
  },
27
19
  "./src/sync/connection": {
28
- "types": "./dist/src/sync/connection.d.ts",
29
- "import": "./dist/src/sync/connection.js",
30
- "default": "./dist/src/sync/connection.js"
20
+ "import": "./dist/sync/connection/WebRTCConnection.js",
21
+ "types": "./dist/sync/connection/WebRTCConnection.d.ts"
31
22
  },
32
23
  "./src/sync/provider": {
33
- "types": "./dist/src/sync/provider.d.ts",
34
- "import": "./dist/src/sync/provider.js",
35
- "default": "./dist/src/sync/provider.js"
36
- },
37
- "./src/sync/backup": {
38
- "types": "./dist/src/sync/backup.d.ts",
39
- "import": "./dist/src/sync/backup.js",
40
- "default": "./dist/src/sync/backup.js"
24
+ "import": "./dist/sync/provider/YjsSqliteProvider.js",
25
+ "types": "./dist/sync/provider/YjsSqliteProvider.d.ts"
41
26
  },
42
- "./sync/aeon": {
43
- "types": "./dist/src/sync/aeon/index.d.ts",
44
- "import": "./dist/src/sync/aeon/index.js",
45
- "default": "./dist/src/sync/aeon/index.js"
27
+ "./src/sync/webtransport": {
28
+ "import": "./dist/sync/webtransport/WebTransportProvider.js",
29
+ "types": "./dist/sync/webtransport/WebTransportProvider.d.ts"
46
30
  },
47
31
  "./src/sync/automerge": {
48
- "types": "./dist/src/sync/AutomergeProvider.d.ts",
49
- "import": "./dist/src/sync/AutomergeProvider.js",
50
- "default": "./dist/src/sync/AutomergeProvider.js"
32
+ "import": "./dist/sync/AutomergeProvider.js",
33
+ "types": "./dist/sync/AutomergeProvider.d.ts"
34
+ },
35
+ "./src/sync/AeonDurableSync": {
36
+ "types": "./dist/sync/AeonDurableSync.d.ts",
37
+ "import": "./dist/sync/AeonDurableSync.js",
38
+ "default": "./dist/sync/AeonDurableSync.js"
39
+ },
40
+ "./src/sync/HybridProvider": {
41
+ "types": "./dist/sync/HybridProvider.d.ts",
42
+ "import": "./dist/sync/HybridProvider.js",
43
+ "default": "./dist/sync/HybridProvider.js"
51
44
  }
52
45
  },
53
46
  "scripts": {
54
- "build": "tsc",
55
- "dev": "tsc --watch",
56
- "test": "bun test --coverage",
57
- "lint": "eslint src --ext .ts"
47
+ "build": "bun build ./src/index.ts ./src/sync/index.ts ./src/sync/connection/WebRTCConnection.ts ./src/sync/provider/YjsSqliteProvider.ts ./src/sync/webtransport/WebTransportProvider.ts ./src/sync/AutomergeProvider.ts ./src/sync/HybridProvider.ts ./src/sync/AeonDurableSync.ts --outdir ./dist --target browser && tsc -p tsconfig.json",
48
+ "dev": "bun --watch ./src/index.ts",
49
+ "test": "bun test"
58
50
  },
59
- "keywords": [
60
- "sqlite",
61
- "wasm",
62
- "vector-search",
63
- "local-first",
64
- "mcp",
65
- "database",
66
- "ai"
51
+ "files": [
52
+ "dist",
53
+ "README.md"
67
54
  ],
68
- "author": "Taylor Buley",
69
- "license": "CC-BY-NC-4.0",
70
- "devDependencies": {
71
- "@types/node": "^20.11.5",
72
- "bun-types": "latest",
73
- "typescript": "^5.3.3"
74
- },
75
55
  "dependencies": {
76
- "@affectively/aeon": "^1.3.0",
77
- "@huggingface/transformers": "^3.8.1",
78
- "@modelcontextprotocol/sdk": "^0.6.0",
79
- "@preact/signals-core": "^1.5.1",
80
- "@sqlite.org/sqlite-wasm": "*",
81
- "devonian": "^0.4.1",
82
- "lib0": "^0.2.117",
83
- "sqlite-vec": "^0.1.7-alpha.2",
84
- "ucans": "^0.10.0",
85
- "y-protocols": "^1.0.7",
56
+ "@affectively/aeon": "workspace:*",
57
+ "@modelcontextprotocol/sdk": "^1.27.1",
58
+ "@sqlite.org/sqlite-wasm": "3.51.2-build6",
86
59
  "y-webrtc": "^10.3.0",
87
- "yjs": "^13.6.29"
60
+ "y-websocket": "^1.5.0",
61
+ "yjs": "^13.6.0"
88
62
  },
89
63
  "peerDependencies": {
90
- "@automerge/automerge": ">=2.0.0"
64
+ "@automerge/automerge": ">=2.0.0",
65
+ "react": ">=18.0.0"
91
66
  },
92
67
  "peerDependenciesMeta": {
93
68
  "@automerge/automerge": {
94
69
  "optional": true
95
70
  }
96
71
  },
97
- "directories": {
98
- "test": "tests"
99
- }
72
+ "devDependencies": {
73
+ "@preact/signals-core": "^1.13.0",
74
+ "@types/react": "^18.0.0",
75
+ "typescript": "^5.7.0"
76
+ },
77
+ "license": "UNLICENSED",
78
+ "repository": {
79
+ "type": "git",
80
+ "url": "https://github.com/affectively-ai/dash"
81
+ },
82
+ "keywords": [
83
+ "dash",
84
+ "crdt",
85
+ "sync",
86
+ "collaborative",
87
+ "webrtc",
88
+ "yjs",
89
+ "automerge"
90
+ ],
91
+ "author": "Edgework DAO"
100
92
  }
@@ -1,137 +0,0 @@
1
- /**
2
- * Firebase Authentication API
3
- * Email/password, OAuth, MFA support
4
- */
5
- import type { FirebaseAuth, User, UserCredential, UserMetadata, ProviderData, AuthCredential, IdTokenResult, MultiFactorInfo, MultiFactorSession } from '../types.js';
6
- /**
7
- * User implementation
8
- */
9
- export declare class UserImpl implements User {
10
- uid: string;
11
- email: string | null;
12
- emailVerified: boolean;
13
- displayName: string | null;
14
- photoURL: string | null;
15
- phoneNumber: string | null;
16
- isAnonymous: boolean;
17
- metadata: UserMetadata;
18
- providerData: ProviderData[];
19
- password?: string;
20
- constructor(uid: string, email?: string | null, displayName?: string | null, photoURL?: string | null);
21
- toJSON(): object;
22
- getIdToken(forceRefresh?: boolean): Promise<string>;
23
- getIdTokenResult(forceRefresh?: boolean): Promise<IdTokenResult>;
24
- refresh(): Promise<void>;
25
- delete(): Promise<void>;
26
- linkWithCredential(credential: AuthCredential): Promise<UserCredential>;
27
- unlink(providerId: string): Promise<UserCredential>;
28
- reauthenticateWithCredential(credential: AuthCredential): Promise<UserCredential>;
29
- updateProfile(profile: {
30
- displayName?: string;
31
- photoURL?: string;
32
- }): Promise<void>;
33
- updateEmail(newEmail: string): Promise<void>;
34
- updatePassword(newPassword: string): Promise<void>;
35
- updatePhoneNumber(credential: AuthCredential): Promise<void>;
36
- }
37
- /**
38
- * Auth credential implementation
39
- */
40
- export declare class AuthCredentialImpl implements AuthCredential {
41
- providerId: string;
42
- signInMethod: string;
43
- _idToken?: string;
44
- _accessToken?: string;
45
- _secret?: string;
46
- _refreshToken?: string;
47
- constructor(providerId: string, signInMethod: string);
48
- toJSON(): object;
49
- }
50
- /**
51
- * Create user with email and password
52
- */
53
- export declare function createUserWithEmailAndPassword(auth: FirebaseAuth, email: string, password: string): Promise<UserCredential>;
54
- /**
55
- * Sign in with email and password
56
- */
57
- export declare function signInWithEmailAndPassword(auth: FirebaseAuth, email: string, password: string): Promise<UserCredential>;
58
- /**
59
- * Sign in anonymously
60
- */
61
- export declare function signInAnonymously(auth: FirebaseAuth): Promise<UserCredential>;
62
- /**
63
- * Sign out
64
- */
65
- export declare function signOut(auth: FirebaseAuth): Promise<void>;
66
- /**
67
- * Get current user
68
- */
69
- export declare function getCurrentUser(auth: FirebaseAuth): User | null;
70
- /**
71
- * On auth state changed
72
- */
73
- export declare function onAuthStateChanged(auth: FirebaseAuth, callback: (user: User | null) => void): () => void;
74
- /**
75
- * Update user profile
76
- */
77
- export declare function updateUserProfile(user: User, profile: {
78
- displayName?: string;
79
- photoURL?: string;
80
- }): Promise<void>;
81
- /**
82
- * Update user email
83
- */
84
- export declare function updateUserEmail(user: User, newEmail: string): Promise<void>;
85
- /**
86
- * Update user password
87
- */
88
- export declare function updateUserPassword(user: User, newPassword: string): Promise<void>;
89
- /**
90
- * Delete user
91
- */
92
- export declare function deleteUser(user: User): Promise<void>;
93
- /**
94
- * Send password reset email
95
- */
96
- export declare function sendPasswordResetEmail(auth: FirebaseAuth, email: string): Promise<void>;
97
- /**
98
- * Send email verification
99
- */
100
- export declare function sendEmailVerification(user: User): Promise<void>;
101
- /**
102
- * Persistence options
103
- */
104
- export declare const browserLocalPersistence: {
105
- type: string;
106
- };
107
- export declare const browserSessionPersistence: {
108
- type: string;
109
- };
110
- export declare const inMemoryPersistence: {
111
- type: string;
112
- };
113
- /**
114
- * Set persistence
115
- */
116
- export declare function setPersistence(auth: FirebaseAuth, persistence: any): Promise<void>;
117
- export declare function getAuth(app?: any): FirebaseAuth;
118
- /**
119
- * TOTP Generator for MFA
120
- */
121
- export declare class TotpMultiFactorGenerator {
122
- static generateSecret(): string;
123
- static assertionForEnrollment(secret: string): MultiFactorSession;
124
- static assertionForSignIn(factorInfo: MultiFactorInfo, code: string): MultiFactorSession;
125
- }
126
- /**
127
- * Phone Multi-Factor Generator
128
- */
129
- export declare class PhoneMultiFactorGenerator {
130
- static assertion(confirmationResult: any): MultiFactorSession;
131
- }
132
- export { BaseOAuthProvider, GoogleAuthProvider, FacebookAuthProvider, GithubAuthProvider, TwitterAuthProvider, MicrosoftAuthProvider, AppleAuthProvider, LinkedInAuthProvider, YahooAuthProvider, InstagramAuthProvider, TikTokAuthProvider, TwitchAuthProvider, DiscordAuthProvider, SlackAuthProvider, SpotifyAuthProvider, StripeAuthProvider, DropboxAuthProvider, BoxAuthProvider, OktaAuthProvider, Auth0Provider, AmazonAuthProvider, GenericOAuthProvider, OAUTH_PROVIDERS, getOAuthProvider, type OAuthProviderType, } from './providers.js';
133
- export declare function updatePassword(user: User, newPassword: string): Promise<void>;
134
- export declare function updateProfile(user: User, profile: {
135
- displayName?: string;
136
- photoURL?: string;
137
- }): Promise<void>;