@firebase/firestore 3.3.1 → 3.4.0-canary.774b2fc19
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/CHANGELOG.md +6 -0
- package/dist/firestore/compat/index.d.ts +1 -1
- package/dist/firestore/src/api/credentials.d.ts +64 -30
- package/dist/firestore/src/api/database.d.ts +2 -1
- package/dist/firestore/src/api.d.ts +2 -1
- package/dist/firestore/src/core/component_provider.d.ts +2 -1
- package/dist/firestore/src/core/firestore_client.d.ts +4 -3
- package/dist/firestore/src/lite-api/components.d.ts +3 -1
- package/dist/firestore/src/lite-api/database.d.ts +4 -2
- package/dist/firestore/src/platform/browser/webchannel_connection.d.ts +1 -1
- package/dist/firestore/src/platform/node/grpc_connection.d.ts +3 -3
- package/dist/firestore/src/remote/connection.d.ts +3 -3
- package/dist/firestore/src/remote/datastore.d.ts +2 -1
- package/dist/firestore/src/remote/persistent_stream.d.ts +9 -7
- package/dist/firestore/src/remote/rest_connection.d.ts +4 -4
- package/dist/firestore/test/integration/remote/stream.test.d.ts +2 -2
- package/dist/firestore/test/integration/util/internal_helpers.d.ts +5 -5
- package/dist/firestore/test/unit/remote/rest_connection.test.d.ts +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.esm2017.js +3413 -3359
- package/dist/index.esm2017.js.map +1 -1
- package/dist/index.esm5.js +3688 -3639
- package/dist/index.esm5.js.map +1 -1
- package/dist/index.node.cjs.js +195 -109
- package/dist/index.node.cjs.js.map +1 -1
- package/dist/index.node.mjs +194 -105
- package/dist/index.node.mjs.map +1 -1
- package/dist/index.rn.js +3391 -3337
- package/dist/index.rn.js.map +1 -1
- package/dist/internal.d.ts +34 -20
- package/dist/lite/firestore/compat/index.d.ts +1 -1
- package/dist/lite/firestore/src/api/credentials.d.ts +64 -30
- package/dist/lite/firestore/src/api/database.d.ts +2 -1
- package/dist/lite/firestore/src/api.d.ts +2 -1
- package/dist/lite/firestore/src/core/component_provider.d.ts +2 -1
- package/dist/lite/firestore/src/core/firestore_client.d.ts +4 -3
- package/dist/lite/firestore/src/lite-api/components.d.ts +3 -1
- package/dist/lite/firestore/src/lite-api/database.d.ts +4 -2
- package/dist/lite/firestore/src/platform/browser/webchannel_connection.d.ts +1 -1
- package/dist/lite/firestore/src/platform/node/grpc_connection.d.ts +3 -3
- package/dist/lite/firestore/src/remote/connection.d.ts +3 -3
- package/dist/lite/firestore/src/remote/datastore.d.ts +2 -1
- package/dist/lite/firestore/src/remote/persistent_stream.d.ts +9 -7
- package/dist/lite/firestore/src/remote/rest_connection.d.ts +4 -4
- package/dist/lite/firestore/test/integration/remote/stream.test.d.ts +2 -2
- package/dist/lite/firestore/test/integration/util/internal_helpers.d.ts +5 -5
- package/dist/lite/firestore/test/unit/remote/rest_connection.test.d.ts +1 -1
- package/dist/lite/index.browser.esm2017.js +1379 -1365
- package/dist/lite/index.browser.esm2017.js.map +1 -1
- package/dist/lite/index.browser.esm5.js +934 -925
- package/dist/lite/index.browser.esm5.js.map +1 -1
- package/dist/lite/index.node.cjs.js +96 -61
- package/dist/lite/index.node.cjs.js.map +1 -1
- package/dist/lite/index.node.mjs +96 -61
- package/dist/lite/index.node.mjs.map +1 -1
- package/dist/lite/index.rn.esm2017.js +937 -923
- package/dist/lite/index.rn.esm2017.js.map +1 -1
- package/dist/lite/internal.d.ts +14 -13
- package/dist/lite/packages/firestore/babel-register.d.ts +1 -0
- package/dist/lite/packages/firestore/compat/index.d.ts +1 -1
- package/dist/lite/packages/firestore/dist/lite/index.browser.esm2017.d.ts +150 -149
- package/dist/lite/packages/firestore/src/api/credentials.d.ts +64 -30
- package/dist/lite/packages/firestore/src/api/database.d.ts +2 -1
- package/dist/lite/packages/firestore/src/api.d.ts +2 -1
- package/dist/lite/packages/firestore/src/core/component_provider.d.ts +2 -1
- package/dist/lite/packages/firestore/src/core/firestore_client.d.ts +4 -3
- package/dist/lite/packages/firestore/src/lite-api/components.d.ts +3 -1
- package/dist/lite/packages/firestore/src/lite-api/database.d.ts +4 -2
- package/dist/lite/packages/firestore/src/platform/browser/webchannel_connection.d.ts +1 -1
- package/dist/lite/packages/firestore/src/platform/node/grpc_connection.d.ts +3 -3
- package/dist/lite/packages/firestore/src/remote/connection.d.ts +3 -3
- package/dist/lite/packages/firestore/src/remote/datastore.d.ts +2 -1
- package/dist/lite/packages/firestore/src/remote/persistent_stream.d.ts +9 -7
- package/dist/lite/packages/firestore/src/remote/rest_connection.d.ts +4 -4
- package/dist/lite/packages/firestore/test/integration/remote/stream.test.d.ts +2 -2
- package/dist/lite/packages/firestore/test/integration/util/internal_helpers.d.ts +5 -5
- package/dist/lite/packages/firestore/test/unit/remote/rest_connection.test.d.ts +1 -1
- package/dist/lite/private.d.ts +14 -13
- package/dist/packages/firestore/babel-register.d.ts +1 -0
- package/dist/packages/firestore/compat/index.d.ts +1 -1
- package/dist/packages/firestore/dist/index.esm2017.d.ts +211 -195
- package/dist/packages/firestore/src/api/credentials.d.ts +64 -30
- package/dist/packages/firestore/src/api/database.d.ts +2 -1
- package/dist/packages/firestore/src/api.d.ts +2 -1
- package/dist/packages/firestore/src/core/component_provider.d.ts +2 -1
- package/dist/packages/firestore/src/core/firestore_client.d.ts +4 -3
- package/dist/packages/firestore/src/lite-api/components.d.ts +3 -1
- package/dist/packages/firestore/src/lite-api/database.d.ts +4 -2
- package/dist/packages/firestore/src/platform/browser/webchannel_connection.d.ts +1 -1
- package/dist/packages/firestore/src/platform/node/grpc_connection.d.ts +3 -3
- package/dist/packages/firestore/src/remote/connection.d.ts +3 -3
- package/dist/packages/firestore/src/remote/datastore.d.ts +2 -1
- package/dist/packages/firestore/src/remote/persistent_stream.d.ts +9 -7
- package/dist/packages/firestore/src/remote/rest_connection.d.ts +4 -4
- package/dist/packages/firestore/test/integration/remote/stream.test.d.ts +2 -2
- package/dist/packages/firestore/test/integration/util/internal_helpers.d.ts +5 -5
- package/dist/packages/firestore/test/unit/remote/rest_connection.test.d.ts +1 -1
- package/dist/private.d.ts +24 -19
- package/package.json +10 -10
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
* See the License for the specific language governing permissions and
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
|
+
import { AppCheckInternalComponentName } from '@firebase/app-check-interop-types';
|
|
17
18
|
import { FirebaseAuthInternalName } from '@firebase/auth-interop-types';
|
|
18
19
|
import { Provider } from '@firebase/component';
|
|
19
20
|
import { User } from '../auth/user';
|
|
@@ -26,30 +27,27 @@ export interface FirstPartyCredentialsSettings {
|
|
|
26
27
|
}
|
|
27
28
|
export interface ProviderCredentialsSettings {
|
|
28
29
|
['type']: 'provider';
|
|
29
|
-
['client']: CredentialsProvider
|
|
30
|
+
['client']: CredentialsProvider<User>;
|
|
30
31
|
}
|
|
31
32
|
/** Settings for private credentials */
|
|
32
33
|
export declare type CredentialsSettings = FirstPartyCredentialsSettings | ProviderCredentialsSettings;
|
|
33
|
-
export declare type TokenType = 'OAuth' | 'FirstParty';
|
|
34
|
+
export declare type TokenType = 'OAuth' | 'FirstParty' | 'AppCheck';
|
|
34
35
|
export interface Token {
|
|
35
36
|
/** Type of token. */
|
|
36
37
|
type: TokenType;
|
|
37
38
|
/**
|
|
38
39
|
* The user with which the token is associated (used for persisting user
|
|
39
40
|
* state on disk, etc.).
|
|
41
|
+
* This will be null for Tokens of the type 'AppCheck'.
|
|
40
42
|
*/
|
|
41
|
-
user
|
|
42
|
-
/**
|
|
43
|
-
|
|
44
|
-
[header: string]: string;
|
|
45
|
-
};
|
|
43
|
+
user?: User;
|
|
44
|
+
/** Header values to set for this token */
|
|
45
|
+
headers: Map<string, string>;
|
|
46
46
|
}
|
|
47
47
|
export declare class OAuthToken implements Token {
|
|
48
48
|
user: User;
|
|
49
49
|
type: TokenType;
|
|
50
|
-
|
|
51
|
-
[header: string]: string;
|
|
52
|
-
};
|
|
50
|
+
headers: Map<any, any>;
|
|
53
51
|
constructor(value: string, user: User);
|
|
54
52
|
}
|
|
55
53
|
/**
|
|
@@ -57,12 +55,12 @@ export declare class OAuthToken implements Token {
|
|
|
57
55
|
* token and may need to invalidate other state if the current user has also
|
|
58
56
|
* changed.
|
|
59
57
|
*/
|
|
60
|
-
export declare type CredentialChangeListener = (
|
|
58
|
+
export declare type CredentialChangeListener<T> = (credential: T) => Promise<void>;
|
|
61
59
|
/**
|
|
62
60
|
* Provides methods for getting the uid and token for the current user and
|
|
63
61
|
* listening for changes.
|
|
64
62
|
*/
|
|
65
|
-
export interface CredentialsProvider {
|
|
63
|
+
export interface CredentialsProvider<T> {
|
|
66
64
|
/**
|
|
67
65
|
* Starts the credentials provider and specifies a listener to be notified of
|
|
68
66
|
* credential changes (sign-in / sign-out, token changes). It is immediately
|
|
@@ -70,7 +68,7 @@ export interface CredentialsProvider {
|
|
|
70
68
|
*
|
|
71
69
|
* The change listener is invoked on the provided AsyncQueue.
|
|
72
70
|
*/
|
|
73
|
-
start(asyncQueue: AsyncQueue, changeListener: CredentialChangeListener): void;
|
|
71
|
+
start(asyncQueue: AsyncQueue, changeListener: CredentialChangeListener<T>): void;
|
|
74
72
|
/** Requests a token for the current user. */
|
|
75
73
|
getToken(): Promise<Token | null>;
|
|
76
74
|
/**
|
|
@@ -84,17 +82,17 @@ export interface CredentialsProvider {
|
|
|
84
82
|
* A CredentialsProvider that always yields an empty token.
|
|
85
83
|
* @internal
|
|
86
84
|
*/
|
|
87
|
-
export declare class
|
|
85
|
+
export declare class EmptyAuthCredentialsProvider implements CredentialsProvider<User> {
|
|
88
86
|
getToken(): Promise<Token | null>;
|
|
89
87
|
invalidateToken(): void;
|
|
90
|
-
start(asyncQueue: AsyncQueue, changeListener: CredentialChangeListener): void;
|
|
88
|
+
start(asyncQueue: AsyncQueue, changeListener: CredentialChangeListener<User>): void;
|
|
91
89
|
shutdown(): void;
|
|
92
90
|
}
|
|
93
91
|
/**
|
|
94
92
|
* A CredentialsProvider that always returns a constant token. Used for
|
|
95
93
|
* emulator token mocking.
|
|
96
94
|
*/
|
|
97
|
-
export declare class
|
|
95
|
+
export declare class EmulatorAuthCredentialsProvider implements CredentialsProvider<User> {
|
|
98
96
|
private token;
|
|
99
97
|
constructor(token: Token);
|
|
100
98
|
/**
|
|
@@ -105,19 +103,19 @@ export declare class EmulatorCredentialsProvider implements CredentialsProvider
|
|
|
105
103
|
private changeListener;
|
|
106
104
|
getToken(): Promise<Token | null>;
|
|
107
105
|
invalidateToken(): void;
|
|
108
|
-
start(asyncQueue: AsyncQueue, changeListener: CredentialChangeListener): void;
|
|
106
|
+
start(asyncQueue: AsyncQueue, changeListener: CredentialChangeListener<User>): void;
|
|
109
107
|
shutdown(): void;
|
|
110
108
|
}
|
|
111
109
|
/** Credential provider for the Lite SDK. */
|
|
112
|
-
export declare class
|
|
110
|
+
export declare class LiteAuthCredentialsProvider implements CredentialsProvider<User> {
|
|
113
111
|
private auth;
|
|
114
112
|
constructor(authProvider: Provider<FirebaseAuthInternalName>);
|
|
115
113
|
getToken(): Promise<Token | null>;
|
|
116
114
|
invalidateToken(): void;
|
|
117
|
-
start(asyncQueue: AsyncQueue, changeListener: CredentialChangeListener): void;
|
|
115
|
+
start(asyncQueue: AsyncQueue, changeListener: CredentialChangeListener<User>): void;
|
|
118
116
|
shutdown(): void;
|
|
119
117
|
}
|
|
120
|
-
export declare class
|
|
118
|
+
export declare class FirebaseAuthCredentialsProvider implements CredentialsProvider<User> {
|
|
121
119
|
private authProvider;
|
|
122
120
|
/**
|
|
123
121
|
* The auth token listener registered with FirebaseApp, retained here so we
|
|
@@ -134,7 +132,7 @@ export declare class FirebaseCredentialsProvider implements CredentialsProvider
|
|
|
134
132
|
private forceRefresh;
|
|
135
133
|
private auth;
|
|
136
134
|
constructor(authProvider: Provider<FirebaseAuthInternalName>);
|
|
137
|
-
start(asyncQueue: AsyncQueue, changeListener: CredentialChangeListener): void;
|
|
135
|
+
start(asyncQueue: AsyncQueue, changeListener: CredentialChangeListener<User>): void;
|
|
138
136
|
getToken(): Promise<Token | null>;
|
|
139
137
|
invalidateToken(): void;
|
|
140
138
|
shutdown(): void;
|
|
@@ -148,29 +146,65 @@ interface Gapi {
|
|
|
148
146
|
};
|
|
149
147
|
}
|
|
150
148
|
export declare class FirstPartyToken implements Token {
|
|
151
|
-
private gapi;
|
|
152
|
-
private sessionIndex;
|
|
153
|
-
private iamToken;
|
|
154
149
|
type: TokenType;
|
|
155
150
|
user: User;
|
|
151
|
+
headers: Map<any, any>;
|
|
156
152
|
constructor(gapi: Gapi, sessionIndex: string, iamToken: string | null);
|
|
157
|
-
get authHeaders(): {
|
|
158
|
-
[header: string]: string;
|
|
159
|
-
};
|
|
160
153
|
}
|
|
161
|
-
export declare class
|
|
154
|
+
export declare class FirstPartyAuthCredentialsProvider implements CredentialsProvider<User> {
|
|
162
155
|
private gapi;
|
|
163
156
|
private sessionIndex;
|
|
164
157
|
private iamToken;
|
|
165
158
|
constructor(gapi: Gapi, sessionIndex: string, iamToken: string | null);
|
|
166
159
|
getToken(): Promise<Token | null>;
|
|
167
|
-
start(asyncQueue: AsyncQueue, changeListener: CredentialChangeListener): void;
|
|
160
|
+
start(asyncQueue: AsyncQueue, changeListener: CredentialChangeListener<User>): void;
|
|
161
|
+
shutdown(): void;
|
|
162
|
+
invalidateToken(): void;
|
|
163
|
+
}
|
|
164
|
+
export declare class AppCheckToken implements Token {
|
|
165
|
+
private value;
|
|
166
|
+
type: TokenType;
|
|
167
|
+
headers: Map<any, any>;
|
|
168
|
+
constructor(value: string);
|
|
169
|
+
}
|
|
170
|
+
export declare class FirebaseAppCheckTokenProvider implements CredentialsProvider<string> {
|
|
171
|
+
private appCheckProvider;
|
|
172
|
+
/**
|
|
173
|
+
* The AppCheck token listener registered with FirebaseApp, retained here so
|
|
174
|
+
* we can unregister it.
|
|
175
|
+
*/
|
|
176
|
+
private tokenListener;
|
|
177
|
+
private forceRefresh;
|
|
178
|
+
private appCheck;
|
|
179
|
+
constructor(appCheckProvider: Provider<AppCheckInternalComponentName>);
|
|
180
|
+
start(asyncQueue: AsyncQueue, changeListener: CredentialChangeListener<string>): void;
|
|
181
|
+
getToken(): Promise<Token | null>;
|
|
182
|
+
invalidateToken(): void;
|
|
183
|
+
shutdown(): void;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* An AppCheck token provider that always yields an empty token.
|
|
187
|
+
* @internal
|
|
188
|
+
*/
|
|
189
|
+
export declare class EmptyAppCheckTokenProvider implements CredentialsProvider<string> {
|
|
190
|
+
getToken(): Promise<Token | null>;
|
|
191
|
+
invalidateToken(): void;
|
|
192
|
+
start(asyncQueue: AsyncQueue, changeListener: CredentialChangeListener<string>): void;
|
|
168
193
|
shutdown(): void;
|
|
194
|
+
}
|
|
195
|
+
/** AppCheck token provider for the Lite SDK. */
|
|
196
|
+
export declare class LiteAppCheckTokenProvider implements CredentialsProvider<string> {
|
|
197
|
+
private appCheckProvider;
|
|
198
|
+
private appCheck;
|
|
199
|
+
constructor(appCheckProvider: Provider<AppCheckInternalComponentName>);
|
|
200
|
+
getToken(): Promise<Token | null>;
|
|
169
201
|
invalidateToken(): void;
|
|
202
|
+
start(asyncQueue: AsyncQueue, changeListener: CredentialChangeListener<string>): void;
|
|
203
|
+
shutdown(): void;
|
|
170
204
|
}
|
|
171
205
|
/**
|
|
172
206
|
* Builds a CredentialsProvider depending on the type of
|
|
173
207
|
* the credentials passed in.
|
|
174
208
|
*/
|
|
175
|
-
export declare function
|
|
209
|
+
export declare function makeAuthCredentialsProvider(credentials?: CredentialsSettings): CredentialsProvider<User>;
|
|
176
210
|
export {};
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
17
|
import { FirebaseApp } from '@firebase/app';
|
|
18
|
+
import { User } from '../auth/user';
|
|
18
19
|
import { DatabaseId } from '../core/database_info';
|
|
19
20
|
import { FirestoreClient } from '../core/firestore_client';
|
|
20
21
|
import { Firestore as LiteFirestore } from '../lite-api/database';
|
|
@@ -49,7 +50,7 @@ export declare class Firestore extends LiteFirestore {
|
|
|
49
50
|
readonly _persistenceKey: string;
|
|
50
51
|
_firestoreClient: FirestoreClient | undefined;
|
|
51
52
|
/** @hideconstructor */
|
|
52
|
-
constructor(databaseIdOrApp: DatabaseId | FirebaseApp,
|
|
53
|
+
constructor(databaseIdOrApp: DatabaseId | FirebaseApp, authCredentialsProvider: CredentialsProvider<User>, appCheckCredentialsProvider: CredentialsProvider<string>);
|
|
53
54
|
_terminate(): Promise<void>;
|
|
54
55
|
}
|
|
55
56
|
/**
|
|
@@ -47,4 +47,5 @@ export { FieldPath as _FieldPath } from './model/path';
|
|
|
47
47
|
export type { ResourcePath as _ResourcePath } from './model/path';
|
|
48
48
|
export type { ByteString as _ByteString } from './util/byte_string';
|
|
49
49
|
export { logWarn as _logWarn } from './util/log';
|
|
50
|
-
export {
|
|
50
|
+
export { EmptyAuthCredentialsProvider as _EmptyAuthCredentialsProvider } from './api/credentials';
|
|
51
|
+
export { EmptyAppCheckTokenProvider as _EmptyAppCheckTokenProvider } from './api/credentials';
|
|
@@ -30,7 +30,8 @@ import { SyncEngine } from './sync_engine';
|
|
|
30
30
|
export interface ComponentConfiguration {
|
|
31
31
|
asyncQueue: AsyncQueue;
|
|
32
32
|
databaseInfo: DatabaseInfo;
|
|
33
|
-
|
|
33
|
+
authCredentials: CredentialsProvider<User>;
|
|
34
|
+
appCheckCredentials: CredentialsProvider<string>;
|
|
34
35
|
clientId: ClientId;
|
|
35
36
|
initialUser: User;
|
|
36
37
|
maxConcurrentLimboResolutions: number;
|
|
@@ -38,7 +38,8 @@ export declare const MAX_CONCURRENT_LIMBO_RESOLUTIONS = 100;
|
|
|
38
38
|
* async queue that is shared by all of the other components in the system.
|
|
39
39
|
*/
|
|
40
40
|
export declare class FirestoreClient {
|
|
41
|
-
private
|
|
41
|
+
private authCredentials;
|
|
42
|
+
private appCheckCredentials;
|
|
42
43
|
/**
|
|
43
44
|
* Asynchronous queue responsible for all of our internal processing. When
|
|
44
45
|
* we get incoming work from the user (via public API) or the network
|
|
@@ -51,10 +52,10 @@ export declare class FirestoreClient {
|
|
|
51
52
|
private databaseInfo;
|
|
52
53
|
private user;
|
|
53
54
|
private readonly clientId;
|
|
54
|
-
private
|
|
55
|
+
private authCredentialListener;
|
|
55
56
|
offlineComponents?: OfflineComponentProvider;
|
|
56
57
|
onlineComponents?: OnlineComponentProvider;
|
|
57
|
-
constructor(
|
|
58
|
+
constructor(authCredentials: CredentialsProvider<User>, appCheckCredentials: CredentialsProvider<string>,
|
|
58
59
|
/**
|
|
59
60
|
* Asynchronous queue responsible for all of our internal processing. When
|
|
60
61
|
* we get incoming work from the user (via public API) or the network
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
*/
|
|
17
17
|
import { _FirebaseService } from '@firebase/app';
|
|
18
18
|
import { CredentialsProvider } from '../api/credentials';
|
|
19
|
+
import { User } from '../auth/user';
|
|
19
20
|
import { DatabaseId, DatabaseInfo } from '../core/database_info';
|
|
20
21
|
import { Datastore } from '../remote/datastore';
|
|
21
22
|
import { FirestoreSettingsImpl } from './settings';
|
|
@@ -27,7 +28,8 @@ export declare const LOG_TAG = "ComponentProvider";
|
|
|
27
28
|
* This interface mainly exists to remove a cyclic dependency.
|
|
28
29
|
*/
|
|
29
30
|
export interface FirestoreService extends _FirebaseService {
|
|
30
|
-
|
|
31
|
+
_authCredentials: CredentialsProvider<User>;
|
|
32
|
+
_appCheckCredentials: CredentialsProvider<string>;
|
|
31
33
|
_persistenceKey: string;
|
|
32
34
|
_databaseId: DatabaseId;
|
|
33
35
|
_terminated: boolean;
|
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
import { FirebaseApp } from '@firebase/app';
|
|
18
18
|
import { EmulatorMockTokenOptions } from '@firebase/util';
|
|
19
19
|
import { CredentialsProvider } from '../api/credentials';
|
|
20
|
+
import { User } from '../auth/user';
|
|
20
21
|
import { DatabaseId } from '../core/database_info';
|
|
21
22
|
import { FirestoreService } from './components';
|
|
22
23
|
import { FirestoreSettingsImpl, PrivateSettings, FirestoreSettings } from './settings';
|
|
@@ -31,7 +32,8 @@ declare module '@firebase/component' {
|
|
|
31
32
|
* Do not call this constructor directly. Instead, use {@link getFirestore}.
|
|
32
33
|
*/
|
|
33
34
|
export declare class Firestore implements FirestoreService {
|
|
34
|
-
|
|
35
|
+
_authCredentials: CredentialsProvider<User>;
|
|
36
|
+
_appCheckCredentials: CredentialsProvider<string>;
|
|
35
37
|
/**
|
|
36
38
|
* Whether it's a Firestore or Firestore Lite instance.
|
|
37
39
|
*/
|
|
@@ -43,7 +45,7 @@ export declare class Firestore implements FirestoreService {
|
|
|
43
45
|
private _terminateTask?;
|
|
44
46
|
_app?: FirebaseApp;
|
|
45
47
|
/** @hideconstructor */
|
|
46
|
-
constructor(databaseIdOrApp: DatabaseId | FirebaseApp,
|
|
48
|
+
constructor(databaseIdOrApp: DatabaseId | FirebaseApp, _authCredentials: CredentialsProvider<User>, _appCheckCredentials: CredentialsProvider<string>);
|
|
47
49
|
/**
|
|
48
50
|
* The {@link @firebase/app#FirebaseApp} associated with this `Firestore` service
|
|
49
51
|
* instance.
|
|
@@ -25,5 +25,5 @@ export declare class WebChannelConnection extends RestConnection {
|
|
|
25
25
|
private readonly useFetchStreams;
|
|
26
26
|
constructor(info: DatabaseInfo);
|
|
27
27
|
protected performRPCRequest<Req, Resp>(rpcName: string, url: string, headers: StringMap, body: Req): Promise<Resp>;
|
|
28
|
-
openStream<Req, Resp>(rpcName: string,
|
|
28
|
+
openStream<Req, Resp>(rpcName: string, authToken: Token | null, appCheckToken: Token | null): Stream<Req, Resp>;
|
|
29
29
|
}
|
|
@@ -28,7 +28,7 @@ export declare class GrpcConnection implements Connection {
|
|
|
28
28
|
private cachedStub;
|
|
29
29
|
constructor(protos: GrpcObject, databaseInfo: DatabaseInfo);
|
|
30
30
|
private ensureActiveStub;
|
|
31
|
-
invokeRPC<Req, Resp>(rpcName: string, path: string, request: Req,
|
|
32
|
-
invokeStreamingRPC<Req, Resp>(rpcName: string, path: string, request: Req,
|
|
33
|
-
openStream<Req, Resp>(rpcName: string,
|
|
31
|
+
invokeRPC<Req, Resp>(rpcName: string, path: string, request: Req, authToken: Token | null, appCheckToken: Token | null): Promise<Resp>;
|
|
32
|
+
invokeStreamingRPC<Req, Resp>(rpcName: string, path: string, request: Req, authToken: Token | null, appCheckToken: Token | null): Promise<Resp[]>;
|
|
33
|
+
openStream<Req, Resp>(rpcName: string, authToken: Token | null, appCheckToken: Token | null): Stream<Req, Resp>;
|
|
34
34
|
}
|
|
@@ -41,7 +41,7 @@ export interface Connection {
|
|
|
41
41
|
* @param token - the Token to use for the RPC.
|
|
42
42
|
* @returns a Promise containing the JSON object encoding of the response
|
|
43
43
|
*/
|
|
44
|
-
invokeRPC<Req, Resp>(rpcName: string, path: string, request: Req,
|
|
44
|
+
invokeRPC<Req, Resp>(rpcName: string, path: string, request: Req, authToken: Token | null, appCheckToken: Token | null): Promise<Resp>;
|
|
45
45
|
/**
|
|
46
46
|
* Invokes a streaming RPC by name, given a request message as a JavaScript
|
|
47
47
|
* object representing the JSON to send. The responses will be consumed to
|
|
@@ -54,14 +54,14 @@ export interface Connection {
|
|
|
54
54
|
* @returns a Promise containing an array with the JSON object encodings of the
|
|
55
55
|
* responses
|
|
56
56
|
*/
|
|
57
|
-
invokeStreamingRPC<Req, Resp>(rpcName: string, path: string, request: Req,
|
|
57
|
+
invokeStreamingRPC<Req, Resp>(rpcName: string, path: string, request: Req, authToken: Token | null, appCheckToken: Token | null): Promise<Resp[]>;
|
|
58
58
|
/**
|
|
59
59
|
* Opens a stream to the given stream RPC endpoint. Returns a stream which
|
|
60
60
|
* will try to open itself.
|
|
61
61
|
* @param rpcName - the name of the RPC to open the stream on
|
|
62
62
|
* @param token - the Token to use for the RPC.
|
|
63
63
|
*/
|
|
64
|
-
openStream<Req, Resp>(rpcName: string,
|
|
64
|
+
openStream<Req, Resp>(rpcName: string, authToken: Token | null, appCheckToken: Token | null): Stream<Req, Resp>;
|
|
65
65
|
}
|
|
66
66
|
/**
|
|
67
67
|
* A bidirectional stream that can be used to send an receive messages.
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
17
|
import { CredentialsProvider } from '../api/credentials';
|
|
18
|
+
import { User } from '../auth/user';
|
|
18
19
|
import { Query } from '../core/query';
|
|
19
20
|
import { Document } from '../model/document';
|
|
20
21
|
import { DocumentKey } from '../model/document_key';
|
|
@@ -31,7 +32,7 @@ import { JsonProtoSerializer } from './serializer';
|
|
|
31
32
|
export declare abstract class Datastore {
|
|
32
33
|
abstract terminate(): void;
|
|
33
34
|
}
|
|
34
|
-
export declare function newDatastore(
|
|
35
|
+
export declare function newDatastore(authCredentials: CredentialsProvider<User>, appCheckCredentials: CredentialsProvider<string>, connection: Connection, serializer: JsonProtoSerializer): Datastore;
|
|
35
36
|
export declare function invokeCommitRpc(datastore: Datastore, mutations: Mutation[]): Promise<void>;
|
|
36
37
|
export declare function invokeBatchGetDocumentsRpc(datastore: Datastore, keys: DocumentKey[]): Promise<Document[]>;
|
|
37
38
|
export declare function invokeRunQueryRpc(datastore: Datastore, query: Query): Promise<Document[]>;
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
17
|
import { CredentialsProvider, Token } from '../api/credentials';
|
|
18
|
+
import { User } from '../auth/user';
|
|
18
19
|
import { SnapshotVersion } from '../core/snapshot_version';
|
|
19
20
|
import { TargetId } from '../core/types';
|
|
20
21
|
import { TargetData } from '../local/target_data';
|
|
@@ -82,7 +83,8 @@ export declare abstract class PersistentStream<SendType, ReceiveType, ListenerTy
|
|
|
82
83
|
private idleTimerId;
|
|
83
84
|
private healthTimerId;
|
|
84
85
|
protected connection: Connection;
|
|
85
|
-
private
|
|
86
|
+
private authCredentialsProvider;
|
|
87
|
+
private appCheckCredentialsProvider;
|
|
86
88
|
protected listener: ListenerType;
|
|
87
89
|
private state;
|
|
88
90
|
/**
|
|
@@ -95,7 +97,7 @@ export declare abstract class PersistentStream<SendType, ReceiveType, ListenerTy
|
|
|
95
97
|
private healthCheck;
|
|
96
98
|
private stream;
|
|
97
99
|
protected backoff: ExponentialBackoff;
|
|
98
|
-
constructor(queue: AsyncQueue, connectionTimerId: TimerId, idleTimerId: TimerId, healthTimerId: TimerId, connection: Connection,
|
|
100
|
+
constructor(queue: AsyncQueue, connectionTimerId: TimerId, idleTimerId: TimerId, healthTimerId: TimerId, connection: Connection, authCredentialsProvider: CredentialsProvider<User>, appCheckCredentialsProvider: CredentialsProvider<string>, listener: ListenerType);
|
|
99
101
|
/**
|
|
100
102
|
* Returns true if start() has been called and no error has occurred. True
|
|
101
103
|
* indicates the stream is open or in the process of opening (which
|
|
@@ -175,7 +177,7 @@ export declare abstract class PersistentStream<SendType, ReceiveType, ListenerTy
|
|
|
175
177
|
* Used by subclasses to start the concrete RPC and return the underlying
|
|
176
178
|
* connection stream.
|
|
177
179
|
*/
|
|
178
|
-
protected abstract startRpc(
|
|
180
|
+
protected abstract startRpc(authToken: Token | null, appCheckToken: Token | null): Stream<SendType, ReceiveType>;
|
|
179
181
|
/**
|
|
180
182
|
* Called after the stream has received a message. The function will be
|
|
181
183
|
* called on the right queue and must return a Promise.
|
|
@@ -211,8 +213,8 @@ export interface WatchStreamListener extends PersistentStreamListener {
|
|
|
211
213
|
*/
|
|
212
214
|
export declare class PersistentListenStream extends PersistentStream<ProtoListenRequest, ProtoListenResponse, WatchStreamListener> {
|
|
213
215
|
private serializer;
|
|
214
|
-
constructor(queue: AsyncQueue, connection: Connection,
|
|
215
|
-
protected startRpc(
|
|
216
|
+
constructor(queue: AsyncQueue, connection: Connection, authCredentials: CredentialsProvider<User>, appCheckCredentials: CredentialsProvider<string>, serializer: JsonProtoSerializer, listener: WatchStreamListener);
|
|
217
|
+
protected startRpc(authToken: Token | null, appCheckToken: Token | null): Stream<ProtoListenRequest, ProtoListenResponse>;
|
|
216
218
|
protected onMessage(watchChangeProto: ProtoListenResponse): Promise<void>;
|
|
217
219
|
/**
|
|
218
220
|
* Registers interest in the results of the given target. If the target
|
|
@@ -260,7 +262,7 @@ export interface WriteStreamListener extends PersistentStreamListener {
|
|
|
260
262
|
export declare class PersistentWriteStream extends PersistentStream<ProtoWriteRequest, ProtoWriteResponse, WriteStreamListener> {
|
|
261
263
|
private serializer;
|
|
262
264
|
private handshakeComplete_;
|
|
263
|
-
constructor(queue: AsyncQueue, connection: Connection,
|
|
265
|
+
constructor(queue: AsyncQueue, connection: Connection, authCredentials: CredentialsProvider<User>, appCheckCredentials: CredentialsProvider<string>, serializer: JsonProtoSerializer, listener: WriteStreamListener);
|
|
264
266
|
/**
|
|
265
267
|
* The last received stream token from the server, used to acknowledge which
|
|
266
268
|
* responses the client has processed. Stream tokens are opaque checkpoint
|
|
@@ -277,7 +279,7 @@ export declare class PersistentWriteStream extends PersistentStream<ProtoWriteRe
|
|
|
277
279
|
get handshakeComplete(): boolean;
|
|
278
280
|
start(): void;
|
|
279
281
|
protected tearDown(): void;
|
|
280
|
-
protected startRpc(
|
|
282
|
+
protected startRpc(authToken: Token | null, appCheckToken: Token | null): Stream<ProtoWriteRequest, ProtoWriteResponse>;
|
|
281
283
|
protected onMessage(responseProto: ProtoWriteResponse): Promise<void>;
|
|
282
284
|
/**
|
|
283
285
|
* Sends an initial streamToken to the server, performing the handshake
|
|
@@ -28,14 +28,14 @@ export declare abstract class RestConnection implements Connection {
|
|
|
28
28
|
protected readonly baseUrl: string;
|
|
29
29
|
private readonly databaseRoot;
|
|
30
30
|
constructor(databaseInfo: DatabaseInfo);
|
|
31
|
-
invokeRPC<Req, Resp>(rpcName: string, path: string, req: Req,
|
|
32
|
-
invokeStreamingRPC<Req, Resp>(rpcName: string, path: string, request: Req,
|
|
33
|
-
abstract openStream<Req, Resp>(rpcName: string,
|
|
31
|
+
invokeRPC<Req, Resp>(rpcName: string, path: string, req: Req, authToken: Token | null, appCheckToken: Token | null): Promise<Resp>;
|
|
32
|
+
invokeStreamingRPC<Req, Resp>(rpcName: string, path: string, request: Req, authToken: Token | null, appCheckToken: Token | null): Promise<Resp[]>;
|
|
33
|
+
abstract openStream<Req, Resp>(rpcName: string, authToken: Token | null, appCheckToken: Token | null): Stream<Req, Resp>;
|
|
34
34
|
/**
|
|
35
35
|
* Modifies the headers for a request, adding any authorization token if
|
|
36
36
|
* present and any additional headers for the request.
|
|
37
37
|
*/
|
|
38
|
-
protected modifyHeadersForRequest(headers: StringMap,
|
|
38
|
+
protected modifyHeadersForRequest(headers: StringMap, authToken: Token | null, appCheckToken: Token | null): void;
|
|
39
39
|
/**
|
|
40
40
|
* Performs an RPC request using an implementation specific networking layer.
|
|
41
41
|
*/
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* See the License for the specific language governing permissions and
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
|
-
import {
|
|
17
|
+
import { EmptyAuthCredentialsProvider } from '../../../src/api/credentials';
|
|
18
18
|
import { SnapshotVersion } from '../../../src/core/snapshot_version';
|
|
19
19
|
import { MutationResult } from '../../../src/model/mutation';
|
|
20
20
|
import { PersistentListenStream, PersistentWriteStream, WatchStreamListener, WriteStreamListener } from '../../../src/remote/persistent_stream';
|
|
@@ -48,6 +48,6 @@ declare class StreamStatusListener implements WatchStreamListener, WriteStreamLi
|
|
|
48
48
|
onClose(err?: FirestoreError): Promise<void>;
|
|
49
49
|
private resolvePending;
|
|
50
50
|
}
|
|
51
|
-
export declare function withTestWriteStream(fn: (writeStream: PersistentWriteStream, streamListener: StreamStatusListener, queue: AsyncQueueImpl) => Promise<void>, credentialsProvider?:
|
|
51
|
+
export declare function withTestWriteStream(fn: (writeStream: PersistentWriteStream, streamListener: StreamStatusListener, queue: AsyncQueueImpl) => Promise<void>, credentialsProvider?: EmptyAuthCredentialsProvider): Promise<void>;
|
|
52
52
|
export declare function withTestWatchStream(fn: (watchStream: PersistentListenStream, streamListener: StreamStatusListener) => Promise<void>): Promise<void>;
|
|
53
53
|
export {};
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
17
|
import * as firestore from '@firebase/firestore-types';
|
|
18
|
-
import { CredentialChangeListener, CredentialsProvider,
|
|
18
|
+
import { CredentialChangeListener, CredentialsProvider, EmptyAuthCredentialsProvider } from '../../../src/api/credentials';
|
|
19
19
|
import { User } from '../../../src/auth/user';
|
|
20
20
|
import { DatabaseInfo } from '../../../src/core/database_info';
|
|
21
21
|
import { Datastore } from '../../../src/remote/datastore';
|
|
@@ -23,11 +23,11 @@ import { AsyncQueue } from '../../../src/util/async_queue';
|
|
|
23
23
|
import { AsyncQueueImpl } from '../../../src/util/async_queue_impl';
|
|
24
24
|
export declare function asyncQueue(db: firestore.FirebaseFirestore): AsyncQueueImpl;
|
|
25
25
|
export declare function getDefaultDatabaseInfo(): DatabaseInfo;
|
|
26
|
-
export declare function withTestDatastore(fn: (datastore: Datastore) => Promise<void>,
|
|
27
|
-
export declare class
|
|
26
|
+
export declare function withTestDatastore(fn: (datastore: Datastore) => Promise<void>, authCredentialsProvider?: CredentialsProvider<User>, appCheckTokenProvider?: CredentialsProvider<string>): Promise<void>;
|
|
27
|
+
export declare class MockAuthCredentialsProvider extends EmptyAuthCredentialsProvider {
|
|
28
28
|
private listener;
|
|
29
29
|
private asyncQueue;
|
|
30
30
|
triggerUserChange(newUser: User): void;
|
|
31
|
-
start(asyncQueue: AsyncQueue, listener: CredentialChangeListener): void;
|
|
31
|
+
start(asyncQueue: AsyncQueue, listener: CredentialChangeListener<User>): void;
|
|
32
32
|
}
|
|
33
|
-
export declare function withMockCredentialProviderTestDb(persistence: boolean, fn: (db: firestore.FirebaseFirestore, mockCredential:
|
|
33
|
+
export declare function withMockCredentialProviderTestDb(persistence: boolean, fn: (db: firestore.FirebaseFirestore, mockCredential: MockAuthCredentialsProvider) => Promise<void>): Promise<void>;
|
|
@@ -23,6 +23,6 @@ export declare class TestRestConnection extends RestConnection {
|
|
|
23
23
|
lastHeaders: StringMap;
|
|
24
24
|
lastRequestBody: unknown;
|
|
25
25
|
nextResponse: Promise<unknown>;
|
|
26
|
-
openStream<Req, Resp>(rpcName: string,
|
|
26
|
+
openStream<Req, Resp>(rpcName: string, authToken: Token | null, appCheckToken: Token | null): Stream<Req, Resp>;
|
|
27
27
|
protected performRPCRequest<Req, Resp>(rpcName: string, url: string, headers: StringMap, body: Req): Promise<Resp>;
|
|
28
28
|
}
|
package/dist/private.d.ts
CHANGED
|
@@ -491,7 +491,8 @@ declare type Comparator<K> = (key1: K, key2: K) => number;
|
|
|
491
491
|
declare interface ComponentConfiguration {
|
|
492
492
|
asyncQueue: AsyncQueue;
|
|
493
493
|
databaseInfo: DatabaseInfo;
|
|
494
|
-
|
|
494
|
+
authCredentials: CredentialsProvider<User>;
|
|
495
|
+
appCheckCredentials: CredentialsProvider<string>;
|
|
495
496
|
clientId: ClientId;
|
|
496
497
|
initialUser: User;
|
|
497
498
|
maxConcurrentLimboResolutions: number;
|
|
@@ -521,13 +522,13 @@ export declare function connectFirestoreEmulator(firestore: Firestore_2, host: s
|
|
|
521
522
|
* token and may need to invalidate other state if the current user has also
|
|
522
523
|
* changed.
|
|
523
524
|
*/
|
|
524
|
-
declare type CredentialChangeListener = (
|
|
525
|
+
declare type CredentialChangeListener<T> = (credential: T) => Promise<void>;
|
|
525
526
|
|
|
526
527
|
/**
|
|
527
528
|
* Provides methods for getting the uid and token for the current user and
|
|
528
529
|
* listening for changes.
|
|
529
530
|
*/
|
|
530
|
-
declare interface CredentialsProvider {
|
|
531
|
+
declare interface CredentialsProvider<T> {
|
|
531
532
|
/**
|
|
532
533
|
* Starts the credentials provider and specifies a listener to be notified of
|
|
533
534
|
* credential changes (sign-in / sign-out, token changes). It is immediately
|
|
@@ -535,7 +536,7 @@ declare interface CredentialsProvider {
|
|
|
535
536
|
*
|
|
536
537
|
* The change listener is invoked on the provided AsyncQueue.
|
|
537
538
|
*/
|
|
538
|
-
start(asyncQueue: AsyncQueue, changeListener: CredentialChangeListener): void;
|
|
539
|
+
start(asyncQueue: AsyncQueue, changeListener: CredentialChangeListener<T>): void;
|
|
539
540
|
/** Requests a token for the current user. */
|
|
540
541
|
getToken(): Promise<Token | null>;
|
|
541
542
|
/**
|
|
@@ -1052,7 +1053,9 @@ declare interface DocumentViewChange {
|
|
|
1052
1053
|
doc: Document_2;
|
|
1053
1054
|
}
|
|
1054
1055
|
|
|
1055
|
-
/* Excluded from this release type:
|
|
1056
|
+
/* Excluded from this release type: _EmptyAppCheckTokenProvider */
|
|
1057
|
+
|
|
1058
|
+
/* Excluded from this release type: _EmptyAuthCredentialsProvider */
|
|
1056
1059
|
export { EmulatorMockTokenOptions }
|
|
1057
1060
|
|
|
1058
1061
|
/**
|
|
@@ -1278,7 +1281,7 @@ export declare class Firestore extends Firestore_2 {
|
|
|
1278
1281
|
readonly _persistenceKey: string;
|
|
1279
1282
|
_firestoreClient: FirestoreClient | undefined;
|
|
1280
1283
|
/** @hideconstructor */
|
|
1281
|
-
constructor(databaseIdOrApp: _DatabaseId | FirebaseApp,
|
|
1284
|
+
constructor(databaseIdOrApp: _DatabaseId | FirebaseApp, authCredentialsProvider: CredentialsProvider<User>, appCheckCredentialsProvider: CredentialsProvider<string>);
|
|
1282
1285
|
_terminate(): Promise<void>;
|
|
1283
1286
|
}
|
|
1284
1287
|
|
|
@@ -1288,7 +1291,8 @@ export declare class Firestore extends Firestore_2 {
|
|
|
1288
1291
|
* Do not call this constructor directly. Instead, use {@link getFirestore}.
|
|
1289
1292
|
*/
|
|
1290
1293
|
declare class Firestore_2 implements FirestoreService {
|
|
1291
|
-
|
|
1294
|
+
_authCredentials: CredentialsProvider<User>;
|
|
1295
|
+
_appCheckCredentials: CredentialsProvider<string>;
|
|
1292
1296
|
/**
|
|
1293
1297
|
* Whether it's a Firestore or Firestore Lite instance.
|
|
1294
1298
|
*/
|
|
@@ -1300,7 +1304,7 @@ declare class Firestore_2 implements FirestoreService {
|
|
|
1300
1304
|
private _terminateTask?;
|
|
1301
1305
|
_app?: FirebaseApp;
|
|
1302
1306
|
/** @hideconstructor */
|
|
1303
|
-
constructor(databaseIdOrApp: _DatabaseId | FirebaseApp,
|
|
1307
|
+
constructor(databaseIdOrApp: _DatabaseId | FirebaseApp, _authCredentials: CredentialsProvider<User>, _appCheckCredentials: CredentialsProvider<string>);
|
|
1304
1308
|
/**
|
|
1305
1309
|
* The {@link @firebase/app#FirebaseApp} associated with this `Firestore` service
|
|
1306
1310
|
* instance.
|
|
@@ -1330,7 +1334,8 @@ declare class Firestore_2 implements FirestoreService {
|
|
|
1330
1334
|
* async queue that is shared by all of the other components in the system.
|
|
1331
1335
|
*/
|
|
1332
1336
|
declare class FirestoreClient {
|
|
1333
|
-
private
|
|
1337
|
+
private authCredentials;
|
|
1338
|
+
private appCheckCredentials;
|
|
1334
1339
|
/**
|
|
1335
1340
|
* Asynchronous queue responsible for all of our internal processing. When
|
|
1336
1341
|
* we get incoming work from the user (via public API) or the network
|
|
@@ -1343,10 +1348,10 @@ declare class FirestoreClient {
|
|
|
1343
1348
|
private databaseInfo;
|
|
1344
1349
|
private user;
|
|
1345
1350
|
private readonly clientId;
|
|
1346
|
-
private
|
|
1351
|
+
private authCredentialListener;
|
|
1347
1352
|
offlineComponents?: OfflineComponentProvider;
|
|
1348
1353
|
onlineComponents?: OnlineComponentProvider;
|
|
1349
|
-
constructor(
|
|
1354
|
+
constructor(authCredentials: CredentialsProvider<User>, appCheckCredentials: CredentialsProvider<string>,
|
|
1350
1355
|
/**
|
|
1351
1356
|
* Asynchronous queue responsible for all of our internal processing. When
|
|
1352
1357
|
* we get incoming work from the user (via public API) or the network
|
|
@@ -1603,7 +1608,8 @@ export declare type FirestoreErrorCode = 'cancelled' | 'unknown' | 'invalid-argu
|
|
|
1603
1608
|
* This interface mainly exists to remove a cyclic dependency.
|
|
1604
1609
|
*/
|
|
1605
1610
|
declare interface FirestoreService extends _FirebaseService {
|
|
1606
|
-
|
|
1611
|
+
_authCredentials: CredentialsProvider<User>;
|
|
1612
|
+
_appCheckCredentials: CredentialsProvider<string>;
|
|
1607
1613
|
_persistenceKey: string;
|
|
1608
1614
|
_databaseId: _DatabaseId;
|
|
1609
1615
|
_terminated: boolean;
|
|
@@ -3463,7 +3469,7 @@ declare interface PrivateSettings extends FirestoreSettings_2 {
|
|
|
3463
3469
|
|
|
3464
3470
|
declare interface ProviderCredentialsSettings {
|
|
3465
3471
|
['type']: 'provider';
|
|
3466
|
-
['client']: CredentialsProvider
|
|
3472
|
+
['client']: CredentialsProvider<User>;
|
|
3467
3473
|
}
|
|
3468
3474
|
|
|
3469
3475
|
/**
|
|
@@ -4924,15 +4930,14 @@ declare interface Token {
|
|
|
4924
4930
|
/**
|
|
4925
4931
|
* The user with which the token is associated (used for persisting user
|
|
4926
4932
|
* state on disk, etc.).
|
|
4933
|
+
* This will be null for Tokens of the type 'AppCheck'.
|
|
4927
4934
|
*/
|
|
4928
|
-
user
|
|
4929
|
-
/**
|
|
4930
|
-
|
|
4931
|
-
[header: string]: string;
|
|
4932
|
-
};
|
|
4935
|
+
user?: User;
|
|
4936
|
+
/** Header values to set for this token */
|
|
4937
|
+
headers: Map<string, string>;
|
|
4933
4938
|
}
|
|
4934
4939
|
|
|
4935
|
-
declare type TokenType = 'OAuth' | 'FirstParty';
|
|
4940
|
+
declare type TokenType = 'OAuth' | 'FirstParty' | 'AppCheck';
|
|
4936
4941
|
|
|
4937
4942
|
/**
|
|
4938
4943
|
* A reference to a transaction.
|