@ezwrld/ezbase 0.1.5 → 0.1.7

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/index.d.ts CHANGED
@@ -9,14 +9,53 @@ interface Document<T = Record<string, unknown>> {
9
9
  interface EzBaseOptions {
10
10
  url: string;
11
11
  adminKey?: string;
12
+ name?: string;
13
+ }
14
+ interface FilterMap {
15
+ [docField: string]: string;
16
+ }
17
+ interface CollectionRule {
18
+ access: string;
19
+ filter?: FilterMap;
20
+ }
21
+ interface ReadWriteRule {
22
+ read?: string | CollectionRule;
23
+ write?: string | CollectionRule;
24
+ }
25
+ type RuleValue = string | CollectionRule | ReadWriteRule;
26
+ interface RulesFile {
27
+ default: string | {
28
+ read?: string;
29
+ write?: string;
30
+ };
31
+ collections?: Record<string, RuleValue>;
32
+ buckets?: Record<string, string>;
33
+ }
34
+ interface RulesResponse {
35
+ rules: RulesFile;
36
+ readonly: boolean;
12
37
  }
13
38
  interface AuthUser {
14
39
  id: string;
15
40
  email: string;
16
41
  role: string;
42
+ claims: Record<string, unknown>;
43
+ name?: string;
44
+ image?: string;
17
45
  created?: number;
18
46
  updated?: number;
19
47
  }
48
+ interface FileMeta {
49
+ path: string;
50
+ bucket: string;
51
+ filename: string;
52
+ size: number;
53
+ mimeType: string;
54
+ uploadedBy: string | null;
55
+ created: number;
56
+ updated: number;
57
+ url: string;
58
+ }
20
59
  type AuthStateCallback = (user: AuthUser | null) => void;
21
60
  declare class AuthClient {
22
61
  private ez;
@@ -43,15 +82,76 @@ declare class AuthClient {
43
82
  }>;
44
83
  signOut(): Promise<void>;
45
84
  restoreSession(token: string, user: AuthUser): void;
85
+ signInWithProvider(provider: string, opts?: {
86
+ callbackURL?: string;
87
+ newUserCallbackURL?: string;
88
+ errorCallbackURL?: string;
89
+ }): Promise<void>;
90
+ getSession(): Promise<{
91
+ token: string;
92
+ user: AuthUser;
93
+ } | null>;
94
+ listProviders(): Promise<{
95
+ providers: string[];
96
+ emailPassword: boolean;
97
+ }>;
98
+ listUsers(opts?: {
99
+ limit?: number;
100
+ offset?: number;
101
+ }): Promise<AuthUser[]>;
102
+ getUser(id: string): Promise<AuthUser>;
103
+ setRole(userId: string, role: string): Promise<AuthUser>;
104
+ setClaims(userId: string, claims: Record<string, unknown>): Promise<AuthUser>;
105
+ mergeClaims(userId: string, claims: Record<string, unknown>): Promise<AuthUser>;
106
+ deleteUser(userId: string): Promise<void>;
46
107
  onAuthStateChanged(callback: AuthStateCallback): () => void;
47
108
  private _notify;
48
109
  }
110
+ declare class DatabaseRef {
111
+ private ez;
112
+ private name;
113
+ constructor(ez: EzBase, name: string);
114
+ /** @internal — base path for API calls to this database */
115
+ _basePath(): string;
116
+ collection<T = Record<string, unknown>>(name: string): CollectionRef<T>;
117
+ listCollections(): Promise<string[]>;
118
+ getPermission(collection: string): Promise<{
119
+ database: string;
120
+ collection: string;
121
+ level: string;
122
+ }>;
123
+ setPermission(collection: string, level: string | CollectionRule): Promise<{
124
+ database: string;
125
+ collection: string;
126
+ level: string;
127
+ }>;
128
+ }
49
129
  declare class EzBase {
50
130
  private url;
51
131
  private adminKey?;
132
+ private _name;
133
+ private _defaultDb;
52
134
  readonly auth: AuthClient;
135
+ /** @internal */
136
+ get _errorPrefix(): string;
53
137
  constructor(urlOrOpts: string | EzBaseOptions);
138
+ database(name: string): DatabaseRef;
139
+ storage(bucket: string): StorageBucket;
54
140
  collection<T = Record<string, unknown>>(name: string): CollectionRef<T>;
141
+ listDatabases(): Promise<string[]>;
142
+ listCollections(): Promise<string[]>;
143
+ getPermission(collection: string): Promise<{
144
+ database: string;
145
+ collection: string;
146
+ level: string;
147
+ }>;
148
+ setPermission(collection: string, level: string | CollectionRule): Promise<{
149
+ database: string;
150
+ collection: string;
151
+ level: string;
152
+ }>;
153
+ getRules(): Promise<RulesResponse>;
154
+ setRules(rules: RulesFile): Promise<RulesResponse>;
55
155
  /** @internal */
56
156
  _getUrl(): string;
57
157
  /** @internal */
@@ -61,8 +161,10 @@ declare class EzBase {
61
161
  }
62
162
  declare class CollectionRef<T = Record<string, unknown>> {
63
163
  private ez;
164
+ private db;
64
165
  private name;
65
- constructor(ez: EzBase, name: string);
166
+ constructor(ez: EzBase, db: DatabaseRef, name: string);
167
+ private _basePath;
66
168
  doc(id: string): DocRef<T>;
67
169
  where(field: string, op: WhereOp, value: unknown): QueryRef<T>;
68
170
  orderBy(field: string, direction?: OrderDir): QueryRef<T>;
@@ -73,9 +175,10 @@ declare class CollectionRef<T = Record<string, unknown>> {
73
175
  }
74
176
  declare class DocRef<T = Record<string, unknown>> {
75
177
  private ez;
178
+ private db;
76
179
  private collection;
77
180
  private id;
78
- constructor(ez: EzBase, collection: string, id: string);
181
+ constructor(ez: EzBase, db: DatabaseRef, collection: string, id: string);
79
182
  private path;
80
183
  get(): Promise<Document<T> | null>;
81
184
  set(data: T): Promise<Document<T>>;
@@ -83,22 +186,41 @@ declare class DocRef<T = Record<string, unknown>> {
83
186
  delete(): Promise<void>;
84
187
  onSnapshot(callback: (doc: Document<T> | null) => void, onError?: (err: Error) => void): () => void;
85
188
  }
189
+ declare class StorageBucket {
190
+ private ez;
191
+ private bucket;
192
+ constructor(ez: EzBase, bucket: string);
193
+ file(path: string): FileHandle;
194
+ upload(pathOrFile: string | File | Blob, file?: File | Blob): Promise<FileMeta>;
195
+ list(): Promise<FileMeta[]>;
196
+ }
197
+ declare class FileHandle {
198
+ private ez;
199
+ private bucket;
200
+ private path;
201
+ constructor(ez: EzBase, bucket: string, path: string);
202
+ get url(): string;
203
+ download(): Promise<Blob>;
204
+ delete(): Promise<void>;
205
+ }
86
206
  declare class QueryRef<T = Record<string, unknown>> {
87
207
  private ez;
208
+ private db;
88
209
  private collection;
89
210
  private wheres;
90
211
  private _orderBy?;
91
212
  private _order?;
92
213
  private _limit?;
93
- constructor(ez: EzBase, collection: string);
214
+ constructor(ez: EzBase, db: DatabaseRef, collection: string);
94
215
  where(field: string, op: WhereOp, value: unknown): this;
95
216
  orderBy(field: string, direction?: OrderDir): this;
96
217
  limit(n: number): this;
97
218
  private buildParams;
219
+ private _basePath;
98
220
  get(): Promise<Document<T>[]>;
99
221
  onSnapshot(callback: (docs: Document<T>[]) => void, onError?: (err: Error) => void): () => void;
100
222
  }
101
- export { EzBase, CollectionRef, DocRef, QueryRef, AuthClient };
102
- export type { Document, WhereOp, OrderDir, EzBaseOptions, AuthUser };
223
+ export { EzBase, DatabaseRef, CollectionRef, DocRef, QueryRef, AuthClient, StorageBucket, FileHandle };
224
+ export type { Document, WhereOp, OrderDir, EzBaseOptions, AuthUser, FileMeta, RulesFile, CollectionRule, FilterMap, RulesResponse, RuleValue, ReadWriteRule };
103
225
  export default EzBase;
104
226
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}