@@ -122,6 +122,14 @@ export interface GoogleAuthOptions<T extends AuthClient = JSONClient> {
122
122
* Your project ID.
123
123
*/
124
124
projectId ?: string ;
125
+
126
+ /**
127
+ * The default service domain for a given Cloud universe.
128
+ *
129
+ * This is an ergonomic equivalent to {@link clientOptions}'s `universeDomain`
130
+ * property and will be set for all generated {@link AuthClient}s.
131
+ */
132
+ universeDomain ?: string ;
125
133
}
126
134
127
135
export const CLOUD_SDK_CLIENT_ID =
@@ -175,7 +183,7 @@ export class GoogleAuth<T extends AuthClient = JSONClient> {
175
183
defaultScopes ?: string | string [ ] ;
176
184
private keyFilename ?: string ;
177
185
private scopes ?: string | string [ ] ;
178
- private clientOptions ? : AuthClientOptions ;
186
+ private clientOptions : AuthClientOptions = { } ;
179
187
180
188
/**
181
189
* The cached universe domain.
@@ -208,7 +216,12 @@ export class GoogleAuth<T extends AuthClient = JSONClient> {
208
216
this . keyFilename = opts . keyFilename || opts . keyFile ;
209
217
this . scopes = opts . scopes ;
210
218
this . jsonContent = opts . credentials || null ;
211
- this . clientOptions = opts . clientOptions ;
219
+ this . clientOptions = opts . clientOptions || { } ;
220
+
221
+ if ( opts . universeDomain ) {
222
+ this . clientOptions . universeDomain = opts . universeDomain ;
223
+ this . #universeDomain = opts . universeDomain ;
224
+ }
212
225
}
213
226
214
227
// GAPIC client libraries should always use self-signed JWTs. The following
0 commit comments