@fluidframework/azure-client 2.0.0-dev-rc.2.0.0.246488 → 2.0.0-dev-rc.3.0.0.253463
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/AzureAudience.d.ts.map +1 -1
- package/dist/AzureAudience.js.map +1 -1
- package/dist/AzureClient.d.ts.map +1 -1
- package/dist/AzureClient.js +37 -15
- package/dist/AzureClient.js.map +1 -1
- package/dist/AzureFunctionTokenProvider.d.ts.map +1 -1
- package/dist/AzureFunctionTokenProvider.js.map +1 -1
- package/dist/AzureUrlResolver.d.ts +1 -1
- package/dist/AzureUrlResolver.d.ts.map +1 -1
- package/dist/AzureUrlResolver.js +3 -3
- package/dist/AzureUrlResolver.js.map +1 -1
- package/dist/interfaces.d.ts +1 -1
- package/dist/interfaces.d.ts.map +1 -1
- package/dist/interfaces.js.map +1 -1
- package/lib/AzureAudience.d.ts.map +1 -1
- package/lib/AzureAudience.js.map +1 -1
- package/lib/AzureClient.d.ts.map +1 -1
- package/lib/AzureClient.js +30 -8
- package/lib/AzureClient.js.map +1 -1
- package/lib/AzureFunctionTokenProvider.d.ts.map +1 -1
- package/lib/AzureFunctionTokenProvider.js.map +1 -1
- package/lib/AzureUrlResolver.d.ts +1 -1
- package/lib/AzureUrlResolver.d.ts.map +1 -1
- package/lib/AzureUrlResolver.js +1 -1
- package/lib/AzureUrlResolver.js.map +1 -1
- package/lib/interfaces.d.ts +1 -1
- package/lib/interfaces.d.ts.map +1 -1
- package/lib/interfaces.js.map +1 -1
- package/lib/tsdoc-metadata.json +11 -0
- package/package.json +25 -35
- package/src/AzureAudience.ts +1 -0
- package/src/AzureClient.ts +37 -17
- package/src/AzureFunctionTokenProvider.ts +1 -2
- package/src/AzureUrlResolver.ts +1 -1
- package/src/interfaces.ts +1 -1
- package/lib/test/AzureClient.spec.js +0 -212
- package/lib/test/AzureClient.spec.js.map +0 -1
- package/lib/test/types/validateAzureClientPrevious.generated.js +0 -42
- package/lib/test/types/validateAzureClientPrevious.generated.js.map +0 -1
|
@@ -1,212 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
|
-
* Licensed under the MIT License.
|
|
4
|
-
*/
|
|
5
|
-
import { strict as assert } from "node:assert";
|
|
6
|
-
import { SchemaFactory, SharedTree } from "@fluidframework/tree";
|
|
7
|
-
import { AttachState } from "@fluidframework/container-definitions";
|
|
8
|
-
import { SharedMap } from "@fluidframework/map";
|
|
9
|
-
import { ScopeType } from "@fluidframework/protocol-definitions";
|
|
10
|
-
import { InsecureTokenProvider } from "@fluidframework/test-runtime-utils";
|
|
11
|
-
import { timeoutPromise } from "@fluidframework/test-utils";
|
|
12
|
-
import { v4 as uuid } from "uuid";
|
|
13
|
-
import { ConnectionState } from "@fluidframework/container-loader";
|
|
14
|
-
import { AzureClient } from "../AzureClient.js";
|
|
15
|
-
function createAzureClient(scopes) {
|
|
16
|
-
const connectionProperties = {
|
|
17
|
-
tokenProvider: new InsecureTokenProvider("fooBar", {
|
|
18
|
-
id: uuid(),
|
|
19
|
-
name: uuid(),
|
|
20
|
-
}, scopes),
|
|
21
|
-
endpoint: "http://localhost:7070",
|
|
22
|
-
type: "local",
|
|
23
|
-
};
|
|
24
|
-
return new AzureClient({ connection: connectionProperties });
|
|
25
|
-
}
|
|
26
|
-
const connectionModeOf = (container) =>
|
|
27
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-explicit-any
|
|
28
|
-
container.container.connectionMode;
|
|
29
|
-
describe("AzureClient", () => {
|
|
30
|
-
const connectTimeoutMs = 1000;
|
|
31
|
-
let client;
|
|
32
|
-
let schema;
|
|
33
|
-
beforeEach("createAzureClient", () => {
|
|
34
|
-
client = createAzureClient();
|
|
35
|
-
schema = {
|
|
36
|
-
initialObjects: {
|
|
37
|
-
map1: SharedMap,
|
|
38
|
-
},
|
|
39
|
-
};
|
|
40
|
-
});
|
|
41
|
-
/**
|
|
42
|
-
* Scenario: test when Azure Client is instantiated correctly, it can create
|
|
43
|
-
* a container successfully.
|
|
44
|
-
*
|
|
45
|
-
* Expected behavior: an error should not be thrown nor should a rejected promise
|
|
46
|
-
* be returned.
|
|
47
|
-
*/
|
|
48
|
-
it("can create new Azure Fluid Relay container successfully", async () => {
|
|
49
|
-
const resourcesP = client.createContainer(schema);
|
|
50
|
-
await assert.doesNotReject(resourcesP, () => true, "container cannot be created in Azure Fluid Relay");
|
|
51
|
-
});
|
|
52
|
-
/**
|
|
53
|
-
* Scenario: test when an Azure Client container is created,
|
|
54
|
-
* it is initially detached.
|
|
55
|
-
*
|
|
56
|
-
* Expected behavior: an error should not be thrown nor should a rejected promise
|
|
57
|
-
* be returned.
|
|
58
|
-
*/
|
|
59
|
-
it("created container is detached", async () => {
|
|
60
|
-
const { container } = await client.createContainer(schema);
|
|
61
|
-
assert.strictEqual(container.attachState, AttachState.Detached, "Container should be detached");
|
|
62
|
-
});
|
|
63
|
-
/**
|
|
64
|
-
* Scenario: Test attaching a container.
|
|
65
|
-
*
|
|
66
|
-
* Expected behavior: an error should not be thrown nor should a rejected promise
|
|
67
|
-
* be returned.
|
|
68
|
-
*/
|
|
69
|
-
it("can attach a container", async () => {
|
|
70
|
-
const { container } = await client.createContainer(schema);
|
|
71
|
-
const containerId = await container.attach();
|
|
72
|
-
if (container.connectionState !== ConnectionState.Connected) {
|
|
73
|
-
await timeoutPromise((resolve) => container.once("connected", () => resolve()), {
|
|
74
|
-
durationMs: connectTimeoutMs,
|
|
75
|
-
errorMsg: "container connect() timeout",
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
assert.strictEqual(typeof containerId, "string", "Attach did not return a string ID");
|
|
79
|
-
assert.strictEqual(container.attachState, AttachState.Attached, "Container is not attached after attach is called");
|
|
80
|
-
});
|
|
81
|
-
/**
|
|
82
|
-
* Scenario: Test if attaching a container twice fails.
|
|
83
|
-
*
|
|
84
|
-
* Expected behavior: an error should not be thrown nor should a rejected promise
|
|
85
|
-
* be returned.
|
|
86
|
-
*/
|
|
87
|
-
it("cannot attach a container twice", async () => {
|
|
88
|
-
const { container } = await client.createContainer(schema);
|
|
89
|
-
const containerId = await container.attach();
|
|
90
|
-
if (container.connectionState !== ConnectionState.Connected) {
|
|
91
|
-
await timeoutPromise((resolve) => container.once("connected", () => resolve()), {
|
|
92
|
-
durationMs: connectTimeoutMs,
|
|
93
|
-
errorMsg: "container connect() timeout",
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
assert.strictEqual(typeof containerId, "string", "Attach did not return a string ID");
|
|
97
|
-
assert.strictEqual(container.attachState, AttachState.Attached, "Container is attached after attach is called");
|
|
98
|
-
await assert.rejects(container.attach(), () => true, "Container should not attach twice");
|
|
99
|
-
});
|
|
100
|
-
/**
|
|
101
|
-
* Scenario: test if Azure Client can get an existing container.
|
|
102
|
-
*
|
|
103
|
-
* Expected behavior: an error should not be thrown nor should a rejected promise
|
|
104
|
-
* be returned.
|
|
105
|
-
*/
|
|
106
|
-
it("can retrieve existing Azure Fluid Relay container successfully", async () => {
|
|
107
|
-
const { container: newContainer } = await client.createContainer(schema);
|
|
108
|
-
const containerId = await newContainer.attach();
|
|
109
|
-
if (newContainer.connectionState !== ConnectionState.Connected) {
|
|
110
|
-
await timeoutPromise((resolve) => newContainer.once("connected", () => resolve()), {
|
|
111
|
-
durationMs: connectTimeoutMs,
|
|
112
|
-
errorMsg: "container connect() timeout",
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
const resources = client.getContainer(containerId, schema);
|
|
116
|
-
await assert.doesNotReject(resources, () => true, "container cannot be retrieved from Azure Fluid Relay");
|
|
117
|
-
});
|
|
118
|
-
/**
|
|
119
|
-
* Scenario: test if Azure Client can get a non-exiting container.
|
|
120
|
-
*
|
|
121
|
-
* Expected behavior: an error should be thrown when trying to get a non-existent container.
|
|
122
|
-
*/
|
|
123
|
-
it("cannot load improperly created container (cannot load a non-existent container)", async () => {
|
|
124
|
-
const consoleErrorFunction = console.error;
|
|
125
|
-
console.error = () => { };
|
|
126
|
-
const containerAndServicesP = client.getContainer("containerConfig", schema);
|
|
127
|
-
const errorFunction = (error) => {
|
|
128
|
-
assert.notStrictEqual(error.message, undefined, "Azure Client error is undefined");
|
|
129
|
-
return true;
|
|
130
|
-
};
|
|
131
|
-
await assert.rejects(containerAndServicesP, errorFunction, "Azure Client can load a non-existent container");
|
|
132
|
-
// eslint-disable-next-line require-atomic-updates
|
|
133
|
-
console.error = consoleErrorFunction;
|
|
134
|
-
});
|
|
135
|
-
/**
|
|
136
|
-
* Scenario: Test if AzureClient with only read permission starts the container in read mode.
|
|
137
|
-
* AzureClient will attempt to start the connection in write mode, and since access permissions
|
|
138
|
-
* does not offer write capabilities, the established connection mode will be `read`.
|
|
139
|
-
*
|
|
140
|
-
* Expected behavior: AzureClient should start the container with the connectionMode in `read`.
|
|
141
|
-
*/
|
|
142
|
-
it("can create a container with only read permission in read mode", async () => {
|
|
143
|
-
const readOnlyAzureClient = createAzureClient([ScopeType.DocRead]);
|
|
144
|
-
const { container } = await readOnlyAzureClient.createContainer(schema);
|
|
145
|
-
const containerId = await container.attach();
|
|
146
|
-
await timeoutPromise((resolve) => container.once("connected", resolve), {
|
|
147
|
-
durationMs: 1000,
|
|
148
|
-
errorMsg: "container connect() timeout",
|
|
149
|
-
});
|
|
150
|
-
const { container: containerGet } = await readOnlyAzureClient.getContainer(containerId, schema);
|
|
151
|
-
assert.strictEqual(connectionModeOf(container), "read", "Creating a container with only read permission is not in read mode");
|
|
152
|
-
assert.strictEqual(connectionModeOf(containerGet), "read", "Getting a container with only read permission is not in read mode");
|
|
153
|
-
});
|
|
154
|
-
/**
|
|
155
|
-
* Scenario: Test if AzureClient with read and write permissions starts the container in write mode.
|
|
156
|
-
* AzureClient will attempt to start the connection in write mode, and since access permissions offer
|
|
157
|
-
* write capability, the established connection mode will be `write`.
|
|
158
|
-
*
|
|
159
|
-
* Expected behavior: AzureClient should start the container with the connectionMode in `write`.
|
|
160
|
-
*/
|
|
161
|
-
it("can create a container with read and write permissions in write mode", async () => {
|
|
162
|
-
const readWriteAzureClient = createAzureClient([ScopeType.DocRead, ScopeType.DocWrite]);
|
|
163
|
-
const { container } = await readWriteAzureClient.createContainer(schema);
|
|
164
|
-
const containerId = await container.attach();
|
|
165
|
-
await timeoutPromise((resolve) => container.once("connected", resolve), {
|
|
166
|
-
durationMs: 1000,
|
|
167
|
-
errorMsg: "container connect() timeout",
|
|
168
|
-
});
|
|
169
|
-
const { container: containerGet } = await readWriteAzureClient.getContainer(containerId, schema);
|
|
170
|
-
assert.strictEqual(connectionModeOf(container), "write", "Creating a container with only write permission is not in write mode");
|
|
171
|
-
assert.strictEqual(connectionModeOf(containerGet), "write", "Getting a container with only write permission is not in write mode");
|
|
172
|
-
});
|
|
173
|
-
/**
|
|
174
|
-
* Scenario: Ensure that the types of 'initialObjects' are preserved when the container
|
|
175
|
-
* schema type is statically known.
|
|
176
|
-
*/
|
|
177
|
-
describe("'initialObjects'", () => {
|
|
178
|
-
it("preserves 'SharedMap' type", async () => {
|
|
179
|
-
const { container } = await client.createContainer({
|
|
180
|
-
initialObjects: {
|
|
181
|
-
map: SharedMap,
|
|
182
|
-
},
|
|
183
|
-
});
|
|
184
|
-
// Ensure that the 'map' API is accessible without casting or suppressing lint rules:
|
|
185
|
-
assert.equal(container.initialObjects.map.get("nonexistent"), undefined);
|
|
186
|
-
});
|
|
187
|
-
it("preserves 'SharedTree' type", async () => {
|
|
188
|
-
const { container } = await client.createContainer({
|
|
189
|
-
initialObjects: {
|
|
190
|
-
tree: SharedTree,
|
|
191
|
-
},
|
|
192
|
-
});
|
|
193
|
-
// Ensure that the 'tree' API is accessible without casting or suppressing lint rules:
|
|
194
|
-
const tree = container.initialObjects.tree;
|
|
195
|
-
// Apply Schema to returned SharedTree.
|
|
196
|
-
const _ = new SchemaFactory("test");
|
|
197
|
-
class RootNode extends _.object("Root", {
|
|
198
|
-
itWorks: _.string,
|
|
199
|
-
}) {
|
|
200
|
-
}
|
|
201
|
-
const view = tree.schematize({
|
|
202
|
-
schema: RootNode,
|
|
203
|
-
initialTree: () => new RootNode({
|
|
204
|
-
itWorks: "yes",
|
|
205
|
-
}),
|
|
206
|
-
});
|
|
207
|
-
// Ensure root node is correctly typed.
|
|
208
|
-
assert.equal(view.root.itWorks, "yes");
|
|
209
|
-
});
|
|
210
|
-
});
|
|
211
|
-
});
|
|
212
|
-
//# sourceMappingURL=AzureClient.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AzureClient.spec.js","sourceRoot":"","sources":["../../src/test/AzureClient.spec.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { strict as assert } from \"node:assert\";\n\nimport { SchemaFactory, SharedTree } from \"@fluidframework/tree\";\nimport { AttachState } from \"@fluidframework/container-definitions\";\nimport { type ContainerSchema, type IFluidContainer } from \"@fluidframework/fluid-static\";\nimport { SharedMap } from \"@fluidframework/map\";\nimport { type ConnectionMode, ScopeType } from \"@fluidframework/protocol-definitions\";\nimport { InsecureTokenProvider } from \"@fluidframework/test-runtime-utils\";\nimport { timeoutPromise } from \"@fluidframework/test-utils\";\n\nimport { v4 as uuid } from \"uuid\";\n\nimport { ConnectionState } from \"@fluidframework/container-loader\";\nimport { AzureClient } from \"../AzureClient.js\";\nimport { type AzureLocalConnectionConfig } from \"../interfaces.js\";\n\nfunction createAzureClient(scopes?: ScopeType[]): AzureClient {\n\tconst connectionProperties: AzureLocalConnectionConfig = {\n\t\ttokenProvider: new InsecureTokenProvider(\n\t\t\t\"fooBar\",\n\t\t\t{\n\t\t\t\tid: uuid(),\n\t\t\t\tname: uuid(),\n\t\t\t},\n\t\t\tscopes,\n\t\t),\n\t\tendpoint: \"http://localhost:7070\",\n\t\ttype: \"local\",\n\t};\n\treturn new AzureClient({ connection: connectionProperties });\n}\n\nconst connectionModeOf = (container: IFluidContainer): ConnectionMode =>\n\t// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-explicit-any\n\t(container as any).container.connectionMode as ConnectionMode;\n\ndescribe(\"AzureClient\", () => {\n\tconst connectTimeoutMs = 1000;\n\tlet client: AzureClient;\n\tlet schema: ContainerSchema;\n\n\tbeforeEach(\"createAzureClient\", () => {\n\t\tclient = createAzureClient();\n\t\tschema = {\n\t\t\tinitialObjects: {\n\t\t\t\tmap1: SharedMap,\n\t\t\t},\n\t\t};\n\t});\n\n\t/**\n\t * Scenario: test when Azure Client is instantiated correctly, it can create\n\t * a container successfully.\n\t *\n\t * Expected behavior: an error should not be thrown nor should a rejected promise\n\t * be returned.\n\t */\n\tit(\"can create new Azure Fluid Relay container successfully\", async () => {\n\t\tconst resourcesP = client.createContainer(schema);\n\n\t\tawait assert.doesNotReject(\n\t\t\tresourcesP,\n\t\t\t() => true,\n\t\t\t\"container cannot be created in Azure Fluid Relay\",\n\t\t);\n\t});\n\n\t/**\n\t * Scenario: test when an Azure Client container is created,\n\t * it is initially detached.\n\t *\n\t * Expected behavior: an error should not be thrown nor should a rejected promise\n\t * be returned.\n\t */\n\tit(\"created container is detached\", async () => {\n\t\tconst { container } = await client.createContainer(schema);\n\t\tassert.strictEqual(\n\t\t\tcontainer.attachState,\n\t\t\tAttachState.Detached,\n\t\t\t\"Container should be detached\",\n\t\t);\n\t});\n\n\t/**\n\t * Scenario: Test attaching a container.\n\t *\n\t * Expected behavior: an error should not be thrown nor should a rejected promise\n\t * be returned.\n\t */\n\tit(\"can attach a container\", async () => {\n\t\tconst { container } = await client.createContainer(schema);\n\t\tconst containerId = await container.attach();\n\n\t\tif (container.connectionState !== ConnectionState.Connected) {\n\t\t\tawait timeoutPromise((resolve) => container.once(\"connected\", () => resolve()), {\n\t\t\t\tdurationMs: connectTimeoutMs,\n\t\t\t\terrorMsg: \"container connect() timeout\",\n\t\t\t});\n\t\t}\n\n\t\tassert.strictEqual(typeof containerId, \"string\", \"Attach did not return a string ID\");\n\t\tassert.strictEqual(\n\t\t\tcontainer.attachState,\n\t\t\tAttachState.Attached,\n\t\t\t\"Container is not attached after attach is called\",\n\t\t);\n\t});\n\n\t/**\n\t * Scenario: Test if attaching a container twice fails.\n\t *\n\t * Expected behavior: an error should not be thrown nor should a rejected promise\n\t * be returned.\n\t */\n\tit(\"cannot attach a container twice\", async () => {\n\t\tconst { container } = await client.createContainer(schema);\n\t\tconst containerId = await container.attach();\n\n\t\tif (container.connectionState !== ConnectionState.Connected) {\n\t\t\tawait timeoutPromise((resolve) => container.once(\"connected\", () => resolve()), {\n\t\t\t\tdurationMs: connectTimeoutMs,\n\t\t\t\terrorMsg: \"container connect() timeout\",\n\t\t\t});\n\t\t}\n\n\t\tassert.strictEqual(typeof containerId, \"string\", \"Attach did not return a string ID\");\n\t\tassert.strictEqual(\n\t\t\tcontainer.attachState,\n\t\t\tAttachState.Attached,\n\t\t\t\"Container is attached after attach is called\",\n\t\t);\n\t\tawait assert.rejects(container.attach(), () => true, \"Container should not attach twice\");\n\t});\n\n\t/**\n\t * Scenario: test if Azure Client can get an existing container.\n\t *\n\t * Expected behavior: an error should not be thrown nor should a rejected promise\n\t * be returned.\n\t */\n\tit(\"can retrieve existing Azure Fluid Relay container successfully\", async () => {\n\t\tconst { container: newContainer } = await client.createContainer(schema);\n\t\tconst containerId = await newContainer.attach();\n\n\t\tif (newContainer.connectionState !== ConnectionState.Connected) {\n\t\t\tawait timeoutPromise((resolve) => newContainer.once(\"connected\", () => resolve()), {\n\t\t\t\tdurationMs: connectTimeoutMs,\n\t\t\t\terrorMsg: \"container connect() timeout\",\n\t\t\t});\n\t\t}\n\n\t\tconst resources = client.getContainer(containerId, schema);\n\t\tawait assert.doesNotReject(\n\t\t\tresources,\n\t\t\t() => true,\n\t\t\t\"container cannot be retrieved from Azure Fluid Relay\",\n\t\t);\n\t});\n\n\t/**\n\t * Scenario: test if Azure Client can get a non-exiting container.\n\t *\n\t * Expected behavior: an error should be thrown when trying to get a non-existent container.\n\t */\n\tit(\"cannot load improperly created container (cannot load a non-existent container)\", async () => {\n\t\tconst consoleErrorFunction = console.error;\n\t\tconsole.error = (): void => {};\n\t\tconst containerAndServicesP = client.getContainer(\"containerConfig\", schema);\n\n\t\tconst errorFunction = (error: Error): boolean => {\n\t\t\tassert.notStrictEqual(error.message, undefined, \"Azure Client error is undefined\");\n\t\t\treturn true;\n\t\t};\n\n\t\tawait assert.rejects(\n\t\t\tcontainerAndServicesP,\n\t\t\terrorFunction,\n\t\t\t\"Azure Client can load a non-existent container\",\n\t\t);\n\t\t// eslint-disable-next-line require-atomic-updates\n\t\tconsole.error = consoleErrorFunction;\n\t});\n\n\t/**\n\t * Scenario: Test if AzureClient with only read permission starts the container in read mode.\n\t * AzureClient will attempt to start the connection in write mode, and since access permissions\n\t * does not offer write capabilities, the established connection mode will be `read`.\n\t *\n\t * Expected behavior: AzureClient should start the container with the connectionMode in `read`.\n\t */\n\tit(\"can create a container with only read permission in read mode\", async () => {\n\t\tconst readOnlyAzureClient = createAzureClient([ScopeType.DocRead]);\n\n\t\tconst { container } = await readOnlyAzureClient.createContainer(schema);\n\t\tconst containerId = await container.attach();\n\t\tawait timeoutPromise((resolve) => container.once(\"connected\", resolve), {\n\t\t\tdurationMs: 1000,\n\t\t\terrorMsg: \"container connect() timeout\",\n\t\t});\n\t\tconst { container: containerGet } = await readOnlyAzureClient.getContainer(\n\t\t\tcontainerId,\n\t\t\tschema,\n\t\t);\n\n\t\tassert.strictEqual(\n\t\t\tconnectionModeOf(container),\n\t\t\t\"read\",\n\t\t\t\"Creating a container with only read permission is not in read mode\",\n\t\t);\n\n\t\tassert.strictEqual(\n\t\t\tconnectionModeOf(containerGet),\n\t\t\t\"read\",\n\t\t\t\"Getting a container with only read permission is not in read mode\",\n\t\t);\n\t});\n\n\t/**\n\t * Scenario: Test if AzureClient with read and write permissions starts the container in write mode.\n\t * AzureClient will attempt to start the connection in write mode, and since access permissions offer\n\t * write capability, the established connection mode will be `write`.\n\t *\n\t * Expected behavior: AzureClient should start the container with the connectionMode in `write`.\n\t */\n\tit(\"can create a container with read and write permissions in write mode\", async () => {\n\t\tconst readWriteAzureClient = createAzureClient([ScopeType.DocRead, ScopeType.DocWrite]);\n\n\t\tconst { container } = await readWriteAzureClient.createContainer(schema);\n\t\tconst containerId = await container.attach();\n\t\tawait timeoutPromise((resolve) => container.once(\"connected\", resolve), {\n\t\t\tdurationMs: 1000,\n\t\t\terrorMsg: \"container connect() timeout\",\n\t\t});\n\t\tconst { container: containerGet } = await readWriteAzureClient.getContainer(\n\t\t\tcontainerId,\n\t\t\tschema,\n\t\t);\n\n\t\tassert.strictEqual(\n\t\t\tconnectionModeOf(container),\n\t\t\t\"write\",\n\t\t\t\"Creating a container with only write permission is not in write mode\",\n\t\t);\n\n\t\tassert.strictEqual(\n\t\t\tconnectionModeOf(containerGet),\n\t\t\t\"write\",\n\t\t\t\"Getting a container with only write permission is not in write mode\",\n\t\t);\n\t});\n\n\t/**\n\t * Scenario: Ensure that the types of 'initialObjects' are preserved when the container\n\t * schema type is statically known.\n\t */\n\tdescribe(\"'initialObjects'\", () => {\n\t\tit(\"preserves 'SharedMap' type\", async () => {\n\t\t\tconst { container } = await client.createContainer({\n\t\t\t\tinitialObjects: {\n\t\t\t\t\tmap: SharedMap,\n\t\t\t\t},\n\t\t\t});\n\n\t\t\t// Ensure that the 'map' API is accessible without casting or suppressing lint rules:\n\t\t\tassert.equal(container.initialObjects.map.get(\"nonexistent\"), undefined);\n\t\t});\n\n\t\tit(\"preserves 'SharedTree' type\", async () => {\n\t\t\tconst { container } = await client.createContainer({\n\t\t\t\tinitialObjects: {\n\t\t\t\t\ttree: SharedTree,\n\t\t\t\t},\n\t\t\t});\n\n\t\t\t// Ensure that the 'tree' API is accessible without casting or suppressing lint rules:\n\t\t\tconst tree = container.initialObjects.tree;\n\n\t\t\t// Apply Schema to returned SharedTree.\n\t\t\tconst _ = new SchemaFactory(\"test\");\n\n\t\t\tclass RootNode extends _.object(\"Root\", {\n\t\t\t\titWorks: _.string,\n\t\t\t}) {}\n\n\t\t\tconst view = tree.schematize({\n\t\t\t\tschema: RootNode,\n\t\t\t\tinitialTree: () =>\n\t\t\t\t\tnew RootNode({\n\t\t\t\t\t\titWorks: \"yes\",\n\t\t\t\t\t}),\n\t\t\t});\n\n\t\t\t// Ensure root node is correctly typed.\n\t\t\tassert.equal(view.root.itWorks, \"yes\");\n\t\t});\n\t});\n});\n"]}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
use_current_ClassDeclaration_AzureClient(get_old_ClassDeclaration_AzureClient());
|
|
2
|
-
use_old_ClassDeclaration_AzureClient(get_current_ClassDeclaration_AzureClient());
|
|
3
|
-
use_current_InterfaceDeclaration_AzureClientProps(get_old_InterfaceDeclaration_AzureClientProps());
|
|
4
|
-
use_old_InterfaceDeclaration_AzureClientProps(get_current_InterfaceDeclaration_AzureClientProps());
|
|
5
|
-
use_current_InterfaceDeclaration_AzureConnectionConfig(get_old_InterfaceDeclaration_AzureConnectionConfig());
|
|
6
|
-
use_old_InterfaceDeclaration_AzureConnectionConfig(get_current_InterfaceDeclaration_AzureConnectionConfig());
|
|
7
|
-
use_current_TypeAliasDeclaration_AzureConnectionConfigType(get_old_TypeAliasDeclaration_AzureConnectionConfigType());
|
|
8
|
-
use_old_TypeAliasDeclaration_AzureConnectionConfigType(get_current_TypeAliasDeclaration_AzureConnectionConfigType());
|
|
9
|
-
use_current_InterfaceDeclaration_AzureContainerServices(get_old_InterfaceDeclaration_AzureContainerServices());
|
|
10
|
-
use_old_InterfaceDeclaration_AzureContainerServices(get_current_InterfaceDeclaration_AzureContainerServices());
|
|
11
|
-
use_current_InterfaceDeclaration_AzureContainerVersion(get_old_InterfaceDeclaration_AzureContainerVersion());
|
|
12
|
-
use_old_InterfaceDeclaration_AzureContainerVersion(get_current_InterfaceDeclaration_AzureContainerVersion());
|
|
13
|
-
use_current_ClassDeclaration_AzureFunctionTokenProvider(get_old_ClassDeclaration_AzureFunctionTokenProvider());
|
|
14
|
-
use_old_ClassDeclaration_AzureFunctionTokenProvider(get_current_ClassDeclaration_AzureFunctionTokenProvider());
|
|
15
|
-
use_current_InterfaceDeclaration_AzureGetVersionsOptions(get_old_InterfaceDeclaration_AzureGetVersionsOptions());
|
|
16
|
-
use_old_InterfaceDeclaration_AzureGetVersionsOptions(get_current_InterfaceDeclaration_AzureGetVersionsOptions());
|
|
17
|
-
use_current_InterfaceDeclaration_AzureLocalConnectionConfig(get_old_InterfaceDeclaration_AzureLocalConnectionConfig());
|
|
18
|
-
use_old_InterfaceDeclaration_AzureLocalConnectionConfig(get_current_InterfaceDeclaration_AzureLocalConnectionConfig());
|
|
19
|
-
use_current_InterfaceDeclaration_AzureMember(get_old_InterfaceDeclaration_AzureMember());
|
|
20
|
-
use_old_InterfaceDeclaration_AzureMember(get_current_InterfaceDeclaration_AzureMember());
|
|
21
|
-
use_current_InterfaceDeclaration_AzureRemoteConnectionConfig(get_old_InterfaceDeclaration_AzureRemoteConnectionConfig());
|
|
22
|
-
use_old_InterfaceDeclaration_AzureRemoteConnectionConfig(get_current_InterfaceDeclaration_AzureRemoteConnectionConfig());
|
|
23
|
-
use_current_InterfaceDeclaration_AzureUser(get_old_InterfaceDeclaration_AzureUser());
|
|
24
|
-
use_old_InterfaceDeclaration_AzureUser(get_current_InterfaceDeclaration_AzureUser());
|
|
25
|
-
use_current_TypeAliasDeclaration_IAzureAudience(get_old_TypeAliasDeclaration_IAzureAudience());
|
|
26
|
-
use_old_TypeAliasDeclaration_IAzureAudience(get_current_TypeAliasDeclaration_IAzureAudience());
|
|
27
|
-
use_current_InterfaceDeclaration_ITelemetryBaseEvent(get_old_InterfaceDeclaration_ITelemetryBaseEvent());
|
|
28
|
-
use_old_InterfaceDeclaration_ITelemetryBaseEvent(get_current_InterfaceDeclaration_ITelemetryBaseEvent());
|
|
29
|
-
use_current_InterfaceDeclaration_ITelemetryBaseLogger(get_old_InterfaceDeclaration_ITelemetryBaseLogger());
|
|
30
|
-
use_old_InterfaceDeclaration_ITelemetryBaseLogger(get_current_InterfaceDeclaration_ITelemetryBaseLogger());
|
|
31
|
-
use_current_InterfaceDeclaration_ITokenClaims(get_old_InterfaceDeclaration_ITokenClaims());
|
|
32
|
-
use_old_InterfaceDeclaration_ITokenClaims(get_current_InterfaceDeclaration_ITokenClaims());
|
|
33
|
-
use_current_InterfaceDeclaration_ITokenProvider(get_old_InterfaceDeclaration_ITokenProvider());
|
|
34
|
-
use_old_InterfaceDeclaration_ITokenProvider(get_current_InterfaceDeclaration_ITokenProvider());
|
|
35
|
-
use_current_InterfaceDeclaration_ITokenResponse(get_old_InterfaceDeclaration_ITokenResponse());
|
|
36
|
-
use_old_InterfaceDeclaration_ITokenResponse(get_current_InterfaceDeclaration_ITokenResponse());
|
|
37
|
-
use_current_InterfaceDeclaration_IUser(get_old_InterfaceDeclaration_IUser());
|
|
38
|
-
use_old_InterfaceDeclaration_IUser(get_current_InterfaceDeclaration_IUser());
|
|
39
|
-
use_current_EnumDeclaration_ScopeType(get_old_EnumDeclaration_ScopeType());
|
|
40
|
-
use_old_EnumDeclaration_ScopeType(get_current_EnumDeclaration_ScopeType());
|
|
41
|
-
export {};
|
|
42
|
-
//# sourceMappingURL=validateAzureClientPrevious.generated.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validateAzureClientPrevious.generated.js","sourceRoot":"","sources":["../../../src/test/types/validateAzureClientPrevious.generated.ts"],"names":[],"mappings":"AAgCA,wCAAwC,CACpC,oCAAoC,EAAE,CAAC,CAAC;AAW5C,oCAAoC,CAChC,wCAAwC,EAAE,CAAC,CAAC;AAWhD,iDAAiD,CAC7C,6CAA6C,EAAE,CAAC,CAAC;AAWrD,6CAA6C,CACzC,iDAAiD,EAAE,CAAC,CAAC;AAWzD,sDAAsD,CAClD,kDAAkD,EAAE,CAAC,CAAC;AAW1D,kDAAkD,CAC9C,sDAAsD,EAAE,CAAC,CAAC;AAW9D,0DAA0D,CACtD,sDAAsD,EAAE,CAAC,CAAC;AAW9D,sDAAsD,CAClD,0DAA0D,EAAE,CAAC,CAAC;AAWlE,uDAAuD,CACnD,mDAAmD,EAAE,CAAC,CAAC;AAW3D,mDAAmD,CAC/C,uDAAuD,EAAE,CAAC,CAAC;AAW/D,sDAAsD,CAClD,kDAAkD,EAAE,CAAC,CAAC;AAW1D,kDAAkD,CAC9C,sDAAsD,EAAE,CAAC,CAAC;AAW9D,uDAAuD,CACnD,mDAAmD,EAAE,CAAC,CAAC;AAW3D,mDAAmD,CAC/C,uDAAuD,EAAE,CAAC,CAAC;AAW/D,wDAAwD,CACpD,oDAAoD,EAAE,CAAC,CAAC;AAW5D,oDAAoD,CAChD,wDAAwD,EAAE,CAAC,CAAC;AAWhE,2DAA2D,CACvD,uDAAuD,EAAE,CAAC,CAAC;AAW/D,uDAAuD,CACnD,2DAA2D,EAAE,CAAC,CAAC;AAWnE,4CAA4C,CACxC,wCAAwC,EAAE,CAAC,CAAC;AAWhD,wCAAwC,CACpC,4CAA4C,EAAE,CAAC,CAAC;AAWpD,4DAA4D,CACxD,wDAAwD,EAAE,CAAC,CAAC;AAWhE,wDAAwD,CACpD,4DAA4D,EAAE,CAAC,CAAC;AAWpE,0CAA0C,CACtC,sCAAsC,EAAE,CAAC,CAAC;AAW9C,sCAAsC,CAClC,0CAA0C,EAAE,CAAC,CAAC;AAWlD,+CAA+C,CAC3C,2CAA2C,EAAE,CAAC,CAAC;AAWnD,2CAA2C,CACvC,+CAA+C,EAAE,CAAC,CAAC;AAWvD,oDAAoD,CAChD,gDAAgD,EAAE,CAAC,CAAC;AAWxD,gDAAgD,CAC5C,oDAAoD,EAAE,CAAC,CAAC;AAW5D,qDAAqD,CACjD,iDAAiD,EAAE,CAAC,CAAC;AAWzD,iDAAiD,CAC7C,qDAAqD,EAAE,CAAC,CAAC;AAW7D,6CAA6C,CACzC,yCAAyC,EAAE,CAAC,CAAC;AAWjD,yCAAyC,CACrC,6CAA6C,EAAE,CAAC,CAAC;AAWrD,+CAA+C,CAC3C,2CAA2C,EAAE,CAAC,CAAC;AAWnD,2CAA2C,CACvC,+CAA+C,EAAE,CAAC,CAAC;AAWvD,+CAA+C,CAC3C,2CAA2C,EAAE,CAAC,CAAC;AAWnD,2CAA2C,CACvC,+CAA+C,EAAE,CAAC,CAAC;AAWvD,sCAAsC,CAClC,kCAAkC,EAAE,CAAC,CAAC;AAW1C,kCAAkC,CAC9B,sCAAsC,EAAE,CAAC,CAAC;AAW9C,qCAAqC,CACjC,iCAAiC,EAAE,CAAC,CAAC;AAWzC,iCAAiC,CAC7B,qCAAqC,EAAE,CAAC,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n/*\n * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.\n * Generated by fluid-type-test-generator in @fluidframework/build-tools.\n */\nimport type * as old from \"@fluidframework/azure-client-previous\";\nimport type * as current from \"../../index.js\";\n\n\n// See 'build-tools/src/type-test-generator/compatibility.ts' for more information.\ntype TypeOnly<T> = T extends number\n\t? number\n\t: T extends string\n\t? string\n\t: T extends boolean | bigint | symbol\n\t? T\n\t: {\n\t\t\t[P in keyof T]: TypeOnly<T[P]>;\n\t };\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"ClassDeclaration_AzureClient\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_ClassDeclaration_AzureClient():\n TypeOnly<old.AzureClient>;\ndeclare function use_current_ClassDeclaration_AzureClient(\n use: TypeOnly<current.AzureClient>): void;\nuse_current_ClassDeclaration_AzureClient(\n get_old_ClassDeclaration_AzureClient());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"ClassDeclaration_AzureClient\": {\"backCompat\": false}\n*/\ndeclare function get_current_ClassDeclaration_AzureClient():\n TypeOnly<current.AzureClient>;\ndeclare function use_old_ClassDeclaration_AzureClient(\n use: TypeOnly<old.AzureClient>): void;\nuse_old_ClassDeclaration_AzureClient(\n get_current_ClassDeclaration_AzureClient());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureClientProps\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_InterfaceDeclaration_AzureClientProps():\n TypeOnly<old.AzureClientProps>;\ndeclare function use_current_InterfaceDeclaration_AzureClientProps(\n use: TypeOnly<current.AzureClientProps>): void;\nuse_current_InterfaceDeclaration_AzureClientProps(\n get_old_InterfaceDeclaration_AzureClientProps());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureClientProps\": {\"backCompat\": false}\n*/\ndeclare function get_current_InterfaceDeclaration_AzureClientProps():\n TypeOnly<current.AzureClientProps>;\ndeclare function use_old_InterfaceDeclaration_AzureClientProps(\n use: TypeOnly<old.AzureClientProps>): void;\nuse_old_InterfaceDeclaration_AzureClientProps(\n get_current_InterfaceDeclaration_AzureClientProps());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureConnectionConfig\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_InterfaceDeclaration_AzureConnectionConfig():\n TypeOnly<old.AzureConnectionConfig>;\ndeclare function use_current_InterfaceDeclaration_AzureConnectionConfig(\n use: TypeOnly<current.AzureConnectionConfig>): void;\nuse_current_InterfaceDeclaration_AzureConnectionConfig(\n get_old_InterfaceDeclaration_AzureConnectionConfig());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureConnectionConfig\": {\"backCompat\": false}\n*/\ndeclare function get_current_InterfaceDeclaration_AzureConnectionConfig():\n TypeOnly<current.AzureConnectionConfig>;\ndeclare function use_old_InterfaceDeclaration_AzureConnectionConfig(\n use: TypeOnly<old.AzureConnectionConfig>): void;\nuse_old_InterfaceDeclaration_AzureConnectionConfig(\n get_current_InterfaceDeclaration_AzureConnectionConfig());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"TypeAliasDeclaration_AzureConnectionConfigType\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_TypeAliasDeclaration_AzureConnectionConfigType():\n TypeOnly<old.AzureConnectionConfigType>;\ndeclare function use_current_TypeAliasDeclaration_AzureConnectionConfigType(\n use: TypeOnly<current.AzureConnectionConfigType>): void;\nuse_current_TypeAliasDeclaration_AzureConnectionConfigType(\n get_old_TypeAliasDeclaration_AzureConnectionConfigType());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"TypeAliasDeclaration_AzureConnectionConfigType\": {\"backCompat\": false}\n*/\ndeclare function get_current_TypeAliasDeclaration_AzureConnectionConfigType():\n TypeOnly<current.AzureConnectionConfigType>;\ndeclare function use_old_TypeAliasDeclaration_AzureConnectionConfigType(\n use: TypeOnly<old.AzureConnectionConfigType>): void;\nuse_old_TypeAliasDeclaration_AzureConnectionConfigType(\n get_current_TypeAliasDeclaration_AzureConnectionConfigType());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureContainerServices\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_InterfaceDeclaration_AzureContainerServices():\n TypeOnly<old.AzureContainerServices>;\ndeclare function use_current_InterfaceDeclaration_AzureContainerServices(\n use: TypeOnly<current.AzureContainerServices>): void;\nuse_current_InterfaceDeclaration_AzureContainerServices(\n get_old_InterfaceDeclaration_AzureContainerServices());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureContainerServices\": {\"backCompat\": false}\n*/\ndeclare function get_current_InterfaceDeclaration_AzureContainerServices():\n TypeOnly<current.AzureContainerServices>;\ndeclare function use_old_InterfaceDeclaration_AzureContainerServices(\n use: TypeOnly<old.AzureContainerServices>): void;\nuse_old_InterfaceDeclaration_AzureContainerServices(\n get_current_InterfaceDeclaration_AzureContainerServices());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureContainerVersion\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_InterfaceDeclaration_AzureContainerVersion():\n TypeOnly<old.AzureContainerVersion>;\ndeclare function use_current_InterfaceDeclaration_AzureContainerVersion(\n use: TypeOnly<current.AzureContainerVersion>): void;\nuse_current_InterfaceDeclaration_AzureContainerVersion(\n get_old_InterfaceDeclaration_AzureContainerVersion());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureContainerVersion\": {\"backCompat\": false}\n*/\ndeclare function get_current_InterfaceDeclaration_AzureContainerVersion():\n TypeOnly<current.AzureContainerVersion>;\ndeclare function use_old_InterfaceDeclaration_AzureContainerVersion(\n use: TypeOnly<old.AzureContainerVersion>): void;\nuse_old_InterfaceDeclaration_AzureContainerVersion(\n get_current_InterfaceDeclaration_AzureContainerVersion());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"ClassDeclaration_AzureFunctionTokenProvider\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_ClassDeclaration_AzureFunctionTokenProvider():\n TypeOnly<old.AzureFunctionTokenProvider>;\ndeclare function use_current_ClassDeclaration_AzureFunctionTokenProvider(\n use: TypeOnly<current.AzureFunctionTokenProvider>): void;\nuse_current_ClassDeclaration_AzureFunctionTokenProvider(\n get_old_ClassDeclaration_AzureFunctionTokenProvider());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"ClassDeclaration_AzureFunctionTokenProvider\": {\"backCompat\": false}\n*/\ndeclare function get_current_ClassDeclaration_AzureFunctionTokenProvider():\n TypeOnly<current.AzureFunctionTokenProvider>;\ndeclare function use_old_ClassDeclaration_AzureFunctionTokenProvider(\n use: TypeOnly<old.AzureFunctionTokenProvider>): void;\nuse_old_ClassDeclaration_AzureFunctionTokenProvider(\n get_current_ClassDeclaration_AzureFunctionTokenProvider());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureGetVersionsOptions\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_InterfaceDeclaration_AzureGetVersionsOptions():\n TypeOnly<old.AzureGetVersionsOptions>;\ndeclare function use_current_InterfaceDeclaration_AzureGetVersionsOptions(\n use: TypeOnly<current.AzureGetVersionsOptions>): void;\nuse_current_InterfaceDeclaration_AzureGetVersionsOptions(\n get_old_InterfaceDeclaration_AzureGetVersionsOptions());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureGetVersionsOptions\": {\"backCompat\": false}\n*/\ndeclare function get_current_InterfaceDeclaration_AzureGetVersionsOptions():\n TypeOnly<current.AzureGetVersionsOptions>;\ndeclare function use_old_InterfaceDeclaration_AzureGetVersionsOptions(\n use: TypeOnly<old.AzureGetVersionsOptions>): void;\nuse_old_InterfaceDeclaration_AzureGetVersionsOptions(\n get_current_InterfaceDeclaration_AzureGetVersionsOptions());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureLocalConnectionConfig\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_InterfaceDeclaration_AzureLocalConnectionConfig():\n TypeOnly<old.AzureLocalConnectionConfig>;\ndeclare function use_current_InterfaceDeclaration_AzureLocalConnectionConfig(\n use: TypeOnly<current.AzureLocalConnectionConfig>): void;\nuse_current_InterfaceDeclaration_AzureLocalConnectionConfig(\n get_old_InterfaceDeclaration_AzureLocalConnectionConfig());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureLocalConnectionConfig\": {\"backCompat\": false}\n*/\ndeclare function get_current_InterfaceDeclaration_AzureLocalConnectionConfig():\n TypeOnly<current.AzureLocalConnectionConfig>;\ndeclare function use_old_InterfaceDeclaration_AzureLocalConnectionConfig(\n use: TypeOnly<old.AzureLocalConnectionConfig>): void;\nuse_old_InterfaceDeclaration_AzureLocalConnectionConfig(\n get_current_InterfaceDeclaration_AzureLocalConnectionConfig());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureMember\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_InterfaceDeclaration_AzureMember():\n TypeOnly<old.AzureMember>;\ndeclare function use_current_InterfaceDeclaration_AzureMember(\n use: TypeOnly<current.AzureMember>): void;\nuse_current_InterfaceDeclaration_AzureMember(\n get_old_InterfaceDeclaration_AzureMember());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureMember\": {\"backCompat\": false}\n*/\ndeclare function get_current_InterfaceDeclaration_AzureMember():\n TypeOnly<current.AzureMember>;\ndeclare function use_old_InterfaceDeclaration_AzureMember(\n use: TypeOnly<old.AzureMember>): void;\nuse_old_InterfaceDeclaration_AzureMember(\n get_current_InterfaceDeclaration_AzureMember());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureRemoteConnectionConfig\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_InterfaceDeclaration_AzureRemoteConnectionConfig():\n TypeOnly<old.AzureRemoteConnectionConfig>;\ndeclare function use_current_InterfaceDeclaration_AzureRemoteConnectionConfig(\n use: TypeOnly<current.AzureRemoteConnectionConfig>): void;\nuse_current_InterfaceDeclaration_AzureRemoteConnectionConfig(\n get_old_InterfaceDeclaration_AzureRemoteConnectionConfig());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureRemoteConnectionConfig\": {\"backCompat\": false}\n*/\ndeclare function get_current_InterfaceDeclaration_AzureRemoteConnectionConfig():\n TypeOnly<current.AzureRemoteConnectionConfig>;\ndeclare function use_old_InterfaceDeclaration_AzureRemoteConnectionConfig(\n use: TypeOnly<old.AzureRemoteConnectionConfig>): void;\nuse_old_InterfaceDeclaration_AzureRemoteConnectionConfig(\n get_current_InterfaceDeclaration_AzureRemoteConnectionConfig());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureUser\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_InterfaceDeclaration_AzureUser():\n TypeOnly<old.AzureUser>;\ndeclare function use_current_InterfaceDeclaration_AzureUser(\n use: TypeOnly<current.AzureUser>): void;\nuse_current_InterfaceDeclaration_AzureUser(\n get_old_InterfaceDeclaration_AzureUser());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_AzureUser\": {\"backCompat\": false}\n*/\ndeclare function get_current_InterfaceDeclaration_AzureUser():\n TypeOnly<current.AzureUser>;\ndeclare function use_old_InterfaceDeclaration_AzureUser(\n use: TypeOnly<old.AzureUser>): void;\nuse_old_InterfaceDeclaration_AzureUser(\n get_current_InterfaceDeclaration_AzureUser());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"TypeAliasDeclaration_IAzureAudience\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_TypeAliasDeclaration_IAzureAudience():\n TypeOnly<old.IAzureAudience>;\ndeclare function use_current_TypeAliasDeclaration_IAzureAudience(\n use: TypeOnly<current.IAzureAudience>): void;\nuse_current_TypeAliasDeclaration_IAzureAudience(\n get_old_TypeAliasDeclaration_IAzureAudience());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"TypeAliasDeclaration_IAzureAudience\": {\"backCompat\": false}\n*/\ndeclare function get_current_TypeAliasDeclaration_IAzureAudience():\n TypeOnly<current.IAzureAudience>;\ndeclare function use_old_TypeAliasDeclaration_IAzureAudience(\n use: TypeOnly<old.IAzureAudience>): void;\nuse_old_TypeAliasDeclaration_IAzureAudience(\n get_current_TypeAliasDeclaration_IAzureAudience());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_ITelemetryBaseEvent\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_InterfaceDeclaration_ITelemetryBaseEvent():\n TypeOnly<old.ITelemetryBaseEvent>;\ndeclare function use_current_InterfaceDeclaration_ITelemetryBaseEvent(\n use: TypeOnly<current.ITelemetryBaseEvent>): void;\nuse_current_InterfaceDeclaration_ITelemetryBaseEvent(\n get_old_InterfaceDeclaration_ITelemetryBaseEvent());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_ITelemetryBaseEvent\": {\"backCompat\": false}\n*/\ndeclare function get_current_InterfaceDeclaration_ITelemetryBaseEvent():\n TypeOnly<current.ITelemetryBaseEvent>;\ndeclare function use_old_InterfaceDeclaration_ITelemetryBaseEvent(\n use: TypeOnly<old.ITelemetryBaseEvent>): void;\nuse_old_InterfaceDeclaration_ITelemetryBaseEvent(\n get_current_InterfaceDeclaration_ITelemetryBaseEvent());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_ITelemetryBaseLogger\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_InterfaceDeclaration_ITelemetryBaseLogger():\n TypeOnly<old.ITelemetryBaseLogger>;\ndeclare function use_current_InterfaceDeclaration_ITelemetryBaseLogger(\n use: TypeOnly<current.ITelemetryBaseLogger>): void;\nuse_current_InterfaceDeclaration_ITelemetryBaseLogger(\n get_old_InterfaceDeclaration_ITelemetryBaseLogger());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_ITelemetryBaseLogger\": {\"backCompat\": false}\n*/\ndeclare function get_current_InterfaceDeclaration_ITelemetryBaseLogger():\n TypeOnly<current.ITelemetryBaseLogger>;\ndeclare function use_old_InterfaceDeclaration_ITelemetryBaseLogger(\n use: TypeOnly<old.ITelemetryBaseLogger>): void;\nuse_old_InterfaceDeclaration_ITelemetryBaseLogger(\n get_current_InterfaceDeclaration_ITelemetryBaseLogger());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_ITokenClaims\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_InterfaceDeclaration_ITokenClaims():\n TypeOnly<old.ITokenClaims>;\ndeclare function use_current_InterfaceDeclaration_ITokenClaims(\n use: TypeOnly<current.ITokenClaims>): void;\nuse_current_InterfaceDeclaration_ITokenClaims(\n get_old_InterfaceDeclaration_ITokenClaims());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_ITokenClaims\": {\"backCompat\": false}\n*/\ndeclare function get_current_InterfaceDeclaration_ITokenClaims():\n TypeOnly<current.ITokenClaims>;\ndeclare function use_old_InterfaceDeclaration_ITokenClaims(\n use: TypeOnly<old.ITokenClaims>): void;\nuse_old_InterfaceDeclaration_ITokenClaims(\n get_current_InterfaceDeclaration_ITokenClaims());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_ITokenProvider\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_InterfaceDeclaration_ITokenProvider():\n TypeOnly<old.ITokenProvider>;\ndeclare function use_current_InterfaceDeclaration_ITokenProvider(\n use: TypeOnly<current.ITokenProvider>): void;\nuse_current_InterfaceDeclaration_ITokenProvider(\n get_old_InterfaceDeclaration_ITokenProvider());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_ITokenProvider\": {\"backCompat\": false}\n*/\ndeclare function get_current_InterfaceDeclaration_ITokenProvider():\n TypeOnly<current.ITokenProvider>;\ndeclare function use_old_InterfaceDeclaration_ITokenProvider(\n use: TypeOnly<old.ITokenProvider>): void;\nuse_old_InterfaceDeclaration_ITokenProvider(\n get_current_InterfaceDeclaration_ITokenProvider());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_ITokenResponse\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_InterfaceDeclaration_ITokenResponse():\n TypeOnly<old.ITokenResponse>;\ndeclare function use_current_InterfaceDeclaration_ITokenResponse(\n use: TypeOnly<current.ITokenResponse>): void;\nuse_current_InterfaceDeclaration_ITokenResponse(\n get_old_InterfaceDeclaration_ITokenResponse());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_ITokenResponse\": {\"backCompat\": false}\n*/\ndeclare function get_current_InterfaceDeclaration_ITokenResponse():\n TypeOnly<current.ITokenResponse>;\ndeclare function use_old_InterfaceDeclaration_ITokenResponse(\n use: TypeOnly<old.ITokenResponse>): void;\nuse_old_InterfaceDeclaration_ITokenResponse(\n get_current_InterfaceDeclaration_ITokenResponse());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_IUser\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_InterfaceDeclaration_IUser():\n TypeOnly<old.IUser>;\ndeclare function use_current_InterfaceDeclaration_IUser(\n use: TypeOnly<current.IUser>): void;\nuse_current_InterfaceDeclaration_IUser(\n get_old_InterfaceDeclaration_IUser());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"InterfaceDeclaration_IUser\": {\"backCompat\": false}\n*/\ndeclare function get_current_InterfaceDeclaration_IUser():\n TypeOnly<current.IUser>;\ndeclare function use_old_InterfaceDeclaration_IUser(\n use: TypeOnly<old.IUser>): void;\nuse_old_InterfaceDeclaration_IUser(\n get_current_InterfaceDeclaration_IUser());\n\n/*\n* Validate forward compat by using old type in place of current type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"EnumDeclaration_ScopeType\": {\"forwardCompat\": false}\n*/\ndeclare function get_old_EnumDeclaration_ScopeType():\n TypeOnly<old.ScopeType>;\ndeclare function use_current_EnumDeclaration_ScopeType(\n use: TypeOnly<current.ScopeType>): void;\nuse_current_EnumDeclaration_ScopeType(\n get_old_EnumDeclaration_ScopeType());\n\n/*\n* Validate back compat by using current type in place of old type\n* If breaking change required, add in package.json under typeValidation.broken:\n* \"EnumDeclaration_ScopeType\": {\"backCompat\": false}\n*/\ndeclare function get_current_EnumDeclaration_ScopeType():\n TypeOnly<current.ScopeType>;\ndeclare function use_old_EnumDeclaration_ScopeType(\n use: TypeOnly<old.ScopeType>): void;\nuse_old_EnumDeclaration_ScopeType(\n get_current_EnumDeclaration_ScopeType());\n"]}
|