@azure-rest/synapse-access-control 1.0.0-alpha.20241121.1 → 1.0.0-alpha.20241125.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/README.md +1 -1
  2. package/dist/browser/accessControlRestClient.d.ts +5 -0
  3. package/dist/browser/accessControlRestClient.d.ts.map +1 -0
  4. package/{dist-esm/src → dist/browser}/accessControlRestClient.js +2 -2
  5. package/dist/browser/accessControlRestClient.js.map +1 -0
  6. package/dist/browser/clientDefinitions.d.ts +49 -0
  7. package/dist/browser/clientDefinitions.d.ts.map +1 -0
  8. package/dist/browser/clientDefinitions.js.map +1 -0
  9. package/dist/browser/index.d.ts +11 -0
  10. package/dist/browser/index.d.ts.map +1 -0
  11. package/dist/browser/index.js +14 -0
  12. package/dist/browser/index.js.map +1 -0
  13. package/dist/browser/isUnexpected.d.ts +10 -0
  14. package/dist/browser/isUnexpected.d.ts.map +1 -0
  15. package/{dist-esm/src → dist/browser}/isUnexpected.js +3 -5
  16. package/dist/browser/isUnexpected.js.map +1 -0
  17. package/dist/browser/models.d.ts +43 -0
  18. package/dist/browser/models.d.ts.map +1 -0
  19. package/dist/browser/outputModels.d.ts +91 -0
  20. package/dist/browser/outputModels.d.ts.map +1 -0
  21. package/dist/browser/package.json +3 -0
  22. package/dist/browser/paginateHelper.d.ts +43 -0
  23. package/dist/browser/paginateHelper.d.ts.map +1 -0
  24. package/{dist-esm/src → dist/browser}/paginateHelper.js +4 -17
  25. package/dist/browser/paginateHelper.js.map +1 -0
  26. package/dist/browser/parameters.d.ts +62 -0
  27. package/dist/browser/parameters.d.ts.map +1 -0
  28. package/dist/browser/parameters.js.map +1 -0
  29. package/dist/browser/responses.d.ts +94 -0
  30. package/dist/browser/responses.d.ts.map +1 -0
  31. package/dist/browser/responses.js.map +1 -0
  32. package/dist/commonjs/accessControlRestClient.d.ts +5 -0
  33. package/dist/commonjs/accessControlRestClient.d.ts.map +1 -0
  34. package/dist/commonjs/accessControlRestClient.js +24 -0
  35. package/dist/commonjs/accessControlRestClient.js.map +1 -0
  36. package/dist/commonjs/clientDefinitions.d.ts +49 -0
  37. package/dist/commonjs/clientDefinitions.d.ts.map +1 -0
  38. package/dist/commonjs/clientDefinitions.js +5 -0
  39. package/dist/commonjs/clientDefinitions.js.map +1 -0
  40. package/dist/commonjs/index.d.ts +11 -0
  41. package/dist/commonjs/index.d.ts.map +1 -0
  42. package/dist/commonjs/index.js +17 -0
  43. package/dist/commonjs/index.js.map +1 -0
  44. package/dist/commonjs/isUnexpected.d.ts +10 -0
  45. package/dist/commonjs/isUnexpected.d.ts.map +1 -0
  46. package/dist/commonjs/isUnexpected.js +73 -0
  47. package/dist/commonjs/isUnexpected.js.map +1 -0
  48. package/dist/commonjs/models.d.ts +43 -0
  49. package/dist/commonjs/models.d.ts.map +1 -0
  50. package/dist/commonjs/models.js +5 -0
  51. package/dist/commonjs/models.js.map +1 -0
  52. package/dist/commonjs/outputModels.d.ts +91 -0
  53. package/dist/commonjs/outputModels.d.ts.map +1 -0
  54. package/dist/commonjs/outputModels.js +5 -0
  55. package/dist/commonjs/outputModels.js.map +1 -0
  56. package/dist/commonjs/package.json +3 -0
  57. package/dist/commonjs/paginateHelper.d.ts +43 -0
  58. package/dist/commonjs/paginateHelper.d.ts.map +1 -0
  59. package/dist/commonjs/paginateHelper.js +73 -0
  60. package/dist/commonjs/paginateHelper.js.map +1 -0
  61. package/dist/commonjs/parameters.d.ts +62 -0
  62. package/dist/commonjs/parameters.d.ts.map +1 -0
  63. package/dist/commonjs/parameters.js +5 -0
  64. package/dist/commonjs/parameters.js.map +1 -0
  65. package/dist/commonjs/responses.d.ts +94 -0
  66. package/dist/commonjs/responses.d.ts.map +1 -0
  67. package/dist/commonjs/responses.js +5 -0
  68. package/dist/commonjs/responses.js.map +1 -0
  69. package/dist/commonjs/tsdoc-metadata.json +11 -0
  70. package/dist/esm/accessControlRestClient.d.ts +5 -0
  71. package/dist/esm/accessControlRestClient.d.ts.map +1 -0
  72. package/dist/esm/accessControlRestClient.js +21 -0
  73. package/dist/esm/accessControlRestClient.js.map +1 -0
  74. package/dist/esm/clientDefinitions.d.ts +49 -0
  75. package/dist/esm/clientDefinitions.d.ts.map +1 -0
  76. package/dist/esm/clientDefinitions.js +4 -0
  77. package/dist/esm/clientDefinitions.js.map +1 -0
  78. package/dist/esm/index.d.ts +11 -0
  79. package/dist/esm/index.d.ts.map +1 -0
  80. package/dist/esm/index.js +14 -0
  81. package/dist/esm/index.js.map +1 -0
  82. package/dist/esm/isUnexpected.d.ts +10 -0
  83. package/dist/esm/isUnexpected.d.ts.map +1 -0
  84. package/dist/esm/isUnexpected.js +70 -0
  85. package/dist/esm/isUnexpected.js.map +1 -0
  86. package/dist/esm/models.d.ts +43 -0
  87. package/dist/esm/models.d.ts.map +1 -0
  88. package/dist/esm/models.js +4 -0
  89. package/dist/esm/models.js.map +1 -0
  90. package/dist/esm/outputModels.d.ts +91 -0
  91. package/dist/esm/outputModels.d.ts.map +1 -0
  92. package/dist/esm/outputModels.js +4 -0
  93. package/dist/esm/outputModels.js.map +1 -0
  94. package/dist/esm/package.json +3 -0
  95. package/dist/esm/paginateHelper.d.ts +43 -0
  96. package/dist/esm/paginateHelper.d.ts.map +1 -0
  97. package/dist/esm/paginateHelper.js +70 -0
  98. package/dist/esm/paginateHelper.js.map +1 -0
  99. package/dist/esm/parameters.d.ts +62 -0
  100. package/dist/esm/parameters.d.ts.map +1 -0
  101. package/dist/esm/parameters.js +4 -0
  102. package/dist/esm/parameters.js.map +1 -0
  103. package/dist/esm/responses.d.ts +94 -0
  104. package/dist/esm/responses.d.ts.map +1 -0
  105. package/dist/esm/responses.js +4 -0
  106. package/dist/esm/responses.js.map +1 -0
  107. package/dist/react-native/accessControlRestClient.d.ts +5 -0
  108. package/dist/react-native/accessControlRestClient.d.ts.map +1 -0
  109. package/dist/react-native/accessControlRestClient.js +21 -0
  110. package/dist/react-native/accessControlRestClient.js.map +1 -0
  111. package/dist/react-native/clientDefinitions.d.ts +49 -0
  112. package/dist/react-native/clientDefinitions.d.ts.map +1 -0
  113. package/dist/react-native/clientDefinitions.js +4 -0
  114. package/dist/react-native/clientDefinitions.js.map +1 -0
  115. package/dist/react-native/index.d.ts +11 -0
  116. package/dist/react-native/index.d.ts.map +1 -0
  117. package/dist/react-native/index.js +14 -0
  118. package/dist/react-native/index.js.map +1 -0
  119. package/dist/react-native/isUnexpected.d.ts +10 -0
  120. package/dist/react-native/isUnexpected.d.ts.map +1 -0
  121. package/dist/react-native/isUnexpected.js +70 -0
  122. package/dist/react-native/isUnexpected.js.map +1 -0
  123. package/dist/react-native/models.d.ts +43 -0
  124. package/dist/react-native/models.d.ts.map +1 -0
  125. package/dist/react-native/models.js +4 -0
  126. package/dist/react-native/models.js.map +1 -0
  127. package/dist/react-native/outputModels.d.ts +91 -0
  128. package/dist/react-native/outputModels.d.ts.map +1 -0
  129. package/dist/react-native/outputModels.js +4 -0
  130. package/dist/react-native/outputModels.js.map +1 -0
  131. package/dist/react-native/package.json +3 -0
  132. package/dist/react-native/paginateHelper.d.ts +43 -0
  133. package/dist/react-native/paginateHelper.d.ts.map +1 -0
  134. package/dist/react-native/paginateHelper.js +70 -0
  135. package/dist/react-native/paginateHelper.js.map +1 -0
  136. package/dist/react-native/parameters.d.ts +62 -0
  137. package/dist/react-native/parameters.d.ts.map +1 -0
  138. package/dist/react-native/parameters.js +4 -0
  139. package/dist/react-native/parameters.js.map +1 -0
  140. package/dist/react-native/responses.d.ts +94 -0
  141. package/dist/react-native/responses.d.ts.map +1 -0
  142. package/dist/react-native/responses.js +4 -0
  143. package/dist/react-native/responses.js.map +1 -0
  144. package/dist/synapse-access-control-rest.d.ts +460 -0
  145. package/package.json +67 -57
  146. package/dist/index.js +0 -187
  147. package/dist/index.js.map +0 -1
  148. package/dist/index.min.js +0 -2
  149. package/dist/index.min.js.map +0 -1
  150. package/dist-esm/samples-dev/createRoleAssignment.js +0 -33
  151. package/dist-esm/samples-dev/createRoleAssignment.js.map +0 -1
  152. package/dist-esm/samples-dev/listRoleAssignments.js +0 -40
  153. package/dist-esm/samples-dev/listRoleAssignments.js.map +0 -1
  154. package/dist-esm/src/accessControlRestClient.js.map +0 -1
  155. package/dist-esm/src/clientDefinitions.js.map +0 -1
  156. package/dist-esm/src/index.js +0 -13
  157. package/dist-esm/src/index.js.map +0 -1
  158. package/dist-esm/src/isUnexpected.js.map +0 -1
  159. package/dist-esm/src/paginateHelper.js.map +0 -1
  160. package/dist-esm/src/parameters.js.map +0 -1
  161. package/dist-esm/src/responses.js.map +0 -1
  162. package/dist-esm/test/public/test.spec.js +0 -97
  163. package/dist-esm/test/public/test.spec.js.map +0 -1
  164. package/dist-esm/test/public/utils/env.browser.js +0 -4
  165. package/dist-esm/test/public/utils/env.browser.js.map +0 -1
  166. package/dist-esm/test/public/utils/env.js +0 -5
  167. package/dist-esm/test/public/utils/env.js.map +0 -1
  168. package/dist-esm/test/public/utils/recordedClient.js +0 -35
  169. package/dist-esm/test/public/utils/recordedClient.js.map +0 -1
  170. package/tsconfig.json +0 -25
  171. /package/{dist-esm/src → dist/browser}/clientDefinitions.js +0 -0
  172. /package/{dist-esm/src → dist/browser}/models.js +0 -0
  173. /package/{dist-esm/src → dist/browser}/models.js.map +0 -0
  174. /package/{dist-esm/src → dist/browser}/outputModels.js +0 -0
  175. /package/{dist-esm/src → dist/browser}/outputModels.js.map +0 -0
  176. /package/{dist-esm/src → dist/browser}/parameters.js +0 -0
  177. /package/{dist-esm/src → dist/browser}/responses.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paginateHelper.d.ts","sourceRoot":"","sources":["../../src/paginateHelper.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,0BAA0B,EAAe,MAAM,oBAAoB,CAAC;AAElF,OAAO,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAG7E;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,KAAK,CAAC,GAAG,KAAK,GAAG,KAAK,CAAC;AAE3E;;GAEG;AACH,MAAM,MAAM,OAAO,CAAC,KAAK,IAAI,CAC3B,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,KACjB,OAAO,CAAC;IACX,IAAI,EAAE,KAAK,CAAC;IACZ,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,WAAW,aAAa,CAAC,SAAS;IACtC;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;CACtD;AAED;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,CAAC,OAAO,IAAI,OAAO,SAAS;IACpD,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,KAAK,CAAA;KAAE,CAAC;CAC/B,GACG,YAAY,CAAC,KAAK,CAAC,GACnB,KAAK,CAAC,OAAO,CAAC,CAAC;AAEnB;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,SAAS,SAAS,qBAAqB,EAC9D,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,SAAS,EAC1B,OAAO,GAAE,aAAa,CAAC,SAAS,CAAM,GACrC,0BAA0B,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CA0BvD"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.paginate = paginate;
6
+ const core_paging_1 = require("@azure/core-paging");
7
+ const core_client_1 = require("@azure-rest/core-client");
8
+ /**
9
+ * Helper to paginate results from an initial response that follows the specification of Autorest `x-ms-pageable` extension
10
+ * @param client - Client to use for sending the next page requests
11
+ * @param initialResponse - Initial response containing the nextLink and current page of elements
12
+ * @param customGetPage - Optional - Function to define how to extract the page and next link to be used to paginate the results
13
+ * @returns - PagedAsyncIterableIterator to iterate the elements
14
+ */
15
+ function paginate(client, initialResponse, options = {}) {
16
+ let firstRun = true;
17
+ const itemName = "value";
18
+ const nextLinkName = "nextLink";
19
+ const { customGetPage } = options;
20
+ const pagedResult = {
21
+ firstPageLink: "",
22
+ getPage: typeof customGetPage === "function"
23
+ ? customGetPage
24
+ : async (pageLink) => {
25
+ const result = firstRun ? initialResponse : await client.pathUnchecked(pageLink).get();
26
+ firstRun = false;
27
+ checkPagingRequest(result);
28
+ const nextLink = getNextLink(result.body, nextLinkName);
29
+ const values = getElements(result.body, itemName);
30
+ return {
31
+ page: values,
32
+ nextPageLink: nextLink,
33
+ };
34
+ },
35
+ };
36
+ return (0, core_paging_1.getPagedAsyncIterator)(pagedResult);
37
+ }
38
+ /**
39
+ * Gets for the value of nextLink in the body
40
+ */
41
+ function getNextLink(body, nextLinkName) {
42
+ if (!nextLinkName) {
43
+ return undefined;
44
+ }
45
+ const nextLink = body[nextLinkName];
46
+ if (typeof nextLink !== "string" && typeof nextLink !== "undefined") {
47
+ throw new Error(`Body Property ${nextLinkName} should be a string or undefined`);
48
+ }
49
+ return nextLink;
50
+ }
51
+ /**
52
+ * Gets the elements of the current request in the body.
53
+ */
54
+ function getElements(body, itemName) {
55
+ const value = body[itemName];
56
+ // value has to be an array according to the x-ms-pageable extension.
57
+ // The fact that this must be an array is used above to calculate the
58
+ // type of elements in the page in PaginateReturn
59
+ if (!Array.isArray(value)) {
60
+ throw new Error(`Couldn't paginate response\n Body doesn't contain an array property with name: ${itemName}`);
61
+ }
62
+ return value !== null && value !== void 0 ? value : [];
63
+ }
64
+ /**
65
+ * Checks if a request failed
66
+ */
67
+ function checkPagingRequest(response) {
68
+ const Http2xxStatusCodes = ["200", "201", "202", "203", "204", "205", "206", "207", "208", "226"];
69
+ if (!Http2xxStatusCodes.includes(response.status)) {
70
+ throw (0, core_client_1.createRestError)(`Pagination failed with unexpected statusCode ${response.status}`, response);
71
+ }
72
+ }
73
+ //# sourceMappingURL=paginateHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paginateHelper.js","sourceRoot":"","sources":["../../src/paginateHelper.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;AAqDlC,4BA8BC;AAhFD,oDAA2D;AAE3D,yDAA0D;AAyC1D;;;;;;GAMG;AACH,SAAgB,QAAQ,CACtB,MAAc,EACd,eAA0B,EAC1B,UAAoC,EAAE;IAItC,IAAI,QAAQ,GAAG,IAAI,CAAC;IACpB,MAAM,QAAQ,GAAG,OAAO,CAAC;IACzB,MAAM,YAAY,GAAG,UAAU,CAAC;IAChC,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAClC,MAAM,WAAW,GAA4B;QAC3C,aAAa,EAAE,EAAE;QACjB,OAAO,EACL,OAAO,aAAa,KAAK,UAAU;YACjC,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,KAAK,EAAE,QAAgB,EAAE,EAAE;gBACzB,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,CAAC;gBACvF,QAAQ,GAAG,KAAK,CAAC;gBACjB,kBAAkB,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;gBACxD,MAAM,MAAM,GAAG,WAAW,CAAW,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBAC5D,OAAO;oBACL,IAAI,EAAE,MAAM;oBACZ,YAAY,EAAE,QAAQ;iBACvB,CAAC;YACJ,CAAC;KACR,CAAC;IAEF,OAAO,IAAA,mCAAqB,EAAC,WAAW,CAAC,CAAC;AAC5C,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,IAAa,EAAE,YAAqB;IACvD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,QAAQ,GAAI,IAAgC,CAAC,YAAY,CAAC,CAAC;IAEjE,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;QACpE,MAAM,IAAI,KAAK,CAAC,iBAAiB,YAAY,kCAAkC,CAAC,CAAC;IACnF,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAc,IAAa,EAAE,QAAgB;IAC/D,MAAM,KAAK,GAAI,IAAgC,CAAC,QAAQ,CAAQ,CAAC;IAEjE,qEAAqE;IACrE,qEAAqE;IACrE,iDAAiD;IACjD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACb,kFAAkF,QAAQ,EAAE,CAC7F,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,QAA+B;IACzD,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAClG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,MAAM,IAAA,6BAAe,EACnB,gDAAgD,QAAQ,CAAC,MAAM,EAAE,EACjE,QAAQ,CACT,CAAC;IACJ,CAAC;AACH,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { PagedAsyncIterableIterator, PagedResult } from \"@azure/core-paging\";\nimport { getPagedAsyncIterator } from \"@azure/core-paging\";\nimport type { Client, PathUncheckedResponse } from \"@azure-rest/core-client\";\nimport { createRestError } from \"@azure-rest/core-client\";\n\n/**\n * Helper type to extract the type of an array\n */\nexport type GetArrayType<T> = T extends Array<infer TData> ? TData : never;\n\n/**\n * The type of a custom function that defines how to get a page and a link to the next one if any.\n */\nexport type GetPage<TPage> = (\n pageLink: string,\n maxPageSize?: number,\n) => Promise<{\n page: TPage;\n nextPageLink?: string;\n}>;\n\n/**\n * Options for the paging helper\n */\nexport interface PagingOptions<TResponse> {\n /**\n * Custom function to extract pagination details for crating the PagedAsyncIterableIterator\n */\n customGetPage?: GetPage<PaginateReturn<TResponse>[]>;\n}\n\n/**\n * Helper type to infer the Type of the paged elements from the response type\n * This type is generated based on the swagger information for x-ms-pageable\n * specifically on the itemName property which indicates the property of the response\n * where the page items are found. The default value is `value`.\n * This type will allow us to provide strongly typed Iterator based on the response we get as second parameter\n */\nexport type PaginateReturn<TResult> = TResult extends {\n body: { value?: infer TPage };\n}\n ? GetArrayType<TPage>\n : Array<unknown>;\n\n/**\n * Helper to paginate results from an initial response that follows the specification of Autorest `x-ms-pageable` extension\n * @param client - Client to use for sending the next page requests\n * @param initialResponse - Initial response containing the nextLink and current page of elements\n * @param customGetPage - Optional - Function to define how to extract the page and next link to be used to paginate the results\n * @returns - PagedAsyncIterableIterator to iterate the elements\n */\nexport function paginate<TResponse extends PathUncheckedResponse>(\n client: Client,\n initialResponse: TResponse,\n options: PagingOptions<TResponse> = {},\n): PagedAsyncIterableIterator<PaginateReturn<TResponse>> {\n // Extract element type from initial response\n type TElement = PaginateReturn<TResponse>;\n let firstRun = true;\n const itemName = \"value\";\n const nextLinkName = \"nextLink\";\n const { customGetPage } = options;\n const pagedResult: PagedResult<TElement[]> = {\n firstPageLink: \"\",\n getPage:\n typeof customGetPage === \"function\"\n ? customGetPage\n : async (pageLink: string) => {\n const result = firstRun ? initialResponse : await client.pathUnchecked(pageLink).get();\n firstRun = false;\n checkPagingRequest(result);\n const nextLink = getNextLink(result.body, nextLinkName);\n const values = getElements<TElement>(result.body, itemName);\n return {\n page: values,\n nextPageLink: nextLink,\n };\n },\n };\n\n return getPagedAsyncIterator(pagedResult);\n}\n\n/**\n * Gets for the value of nextLink in the body\n */\nfunction getNextLink(body: unknown, nextLinkName?: string): string | undefined {\n if (!nextLinkName) {\n return undefined;\n }\n\n const nextLink = (body as Record<string, unknown>)[nextLinkName];\n\n if (typeof nextLink !== \"string\" && typeof nextLink !== \"undefined\") {\n throw new Error(`Body Property ${nextLinkName} should be a string or undefined`);\n }\n\n return nextLink;\n}\n\n/**\n * Gets the elements of the current request in the body.\n */\nfunction getElements<T = unknown>(body: unknown, itemName: string): T[] {\n const value = (body as Record<string, unknown>)[itemName] as T[];\n\n // value has to be an array according to the x-ms-pageable extension.\n // The fact that this must be an array is used above to calculate the\n // type of elements in the page in PaginateReturn\n if (!Array.isArray(value)) {\n throw new Error(\n `Couldn't paginate response\\n Body doesn't contain an array property with name: ${itemName}`,\n );\n }\n\n return value ?? [];\n}\n\n/**\n * Checks if a request failed\n */\nfunction checkPagingRequest(response: PathUncheckedResponse): void {\n const Http2xxStatusCodes = [\"200\", \"201\", \"202\", \"203\", \"204\", \"205\", \"206\", \"207\", \"208\", \"226\"];\n if (!Http2xxStatusCodes.includes(response.status)) {\n throw createRestError(\n `Pagination failed with unexpected statusCode ${response.status}`,\n response,\n );\n }\n}\n"]}
@@ -0,0 +1,62 @@
1
+ import type { RawHttpHeadersInput } from "@azure/core-rest-pipeline";
2
+ import type { RequestParameters } from "@azure-rest/core-client";
3
+ import type { CheckPrincipalAccessRequest, RoleAssignmentRequest } from "./models.js";
4
+ export interface RoleAssignmentsCheckPrincipalAccessBodyParam {
5
+ /** Details of scope, list of actions and principal. */
6
+ body: CheckPrincipalAccessRequest;
7
+ }
8
+ export interface RoleAssignmentsCheckPrincipalAccessMediaTypesParam {
9
+ /** Request content type */
10
+ contentType?: "application/json" | "text/json";
11
+ }
12
+ export type RoleAssignmentsCheckPrincipalAccessParameters = RoleAssignmentsCheckPrincipalAccessMediaTypesParam & RoleAssignmentsCheckPrincipalAccessBodyParam & RequestParameters;
13
+ export interface RoleAssignmentsListRoleAssignmentsHeaders {
14
+ /** Continuation token. */
15
+ "x-ms-continuation"?: string;
16
+ }
17
+ export interface RoleAssignmentsListRoleAssignmentsQueryParamProperties {
18
+ /** Synapse Built-In Role Id. */
19
+ roleId?: string;
20
+ /** Object ID of the AAD principal or security-group. */
21
+ principalId?: string;
22
+ /** Scope of the Synapse Built-in Role. */
23
+ scope?: string;
24
+ }
25
+ export interface RoleAssignmentsListRoleAssignmentsQueryParam {
26
+ queryParameters?: RoleAssignmentsListRoleAssignmentsQueryParamProperties;
27
+ }
28
+ export interface RoleAssignmentsListRoleAssignmentsHeaderParam {
29
+ headers: RawHttpHeadersInput & RoleAssignmentsListRoleAssignmentsHeaders;
30
+ }
31
+ export type RoleAssignmentsListRoleAssignmentsParameters = RoleAssignmentsListRoleAssignmentsQueryParam & RoleAssignmentsListRoleAssignmentsHeaderParam & RequestParameters;
32
+ export interface RoleAssignmentsCreateRoleAssignmentBodyParam {
33
+ /** Details of role id, scope and object id. */
34
+ body: RoleAssignmentRequest;
35
+ }
36
+ export interface RoleAssignmentsCreateRoleAssignmentMediaTypesParam {
37
+ /** Request content type */
38
+ contentType?: "application/json" | "text/json";
39
+ }
40
+ export type RoleAssignmentsCreateRoleAssignmentParameters = RoleAssignmentsCreateRoleAssignmentMediaTypesParam & RoleAssignmentsCreateRoleAssignmentBodyParam & RequestParameters;
41
+ export type RoleAssignmentsGetRoleAssignmentByIdParameters = RequestParameters;
42
+ export interface RoleAssignmentsDeleteRoleAssignmentByIdQueryParamProperties {
43
+ /** Scope of the Synapse Built-in Role. */
44
+ scope?: string;
45
+ }
46
+ export interface RoleAssignmentsDeleteRoleAssignmentByIdQueryParam {
47
+ queryParameters?: RoleAssignmentsDeleteRoleAssignmentByIdQueryParamProperties;
48
+ }
49
+ export type RoleAssignmentsDeleteRoleAssignmentByIdParameters = RoleAssignmentsDeleteRoleAssignmentByIdQueryParam & RequestParameters;
50
+ export interface RoleDefinitionsListRoleDefinitionsQueryParamProperties {
51
+ /** Is a Synapse Built-In Role or not. */
52
+ isBuiltIn?: boolean;
53
+ /** Scope of the Synapse Built-in Role. */
54
+ scope?: string;
55
+ }
56
+ export interface RoleDefinitionsListRoleDefinitionsQueryParam {
57
+ queryParameters?: RoleDefinitionsListRoleDefinitionsQueryParamProperties;
58
+ }
59
+ export type RoleDefinitionsListRoleDefinitionsParameters = RoleDefinitionsListRoleDefinitionsQueryParam & RequestParameters;
60
+ export type RoleDefinitionsGetRoleDefinitionByIdParameters = RequestParameters;
61
+ export type RoleDefinitionsListScopesParameters = RequestParameters;
62
+ //# sourceMappingURL=parameters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parameters.d.ts","sourceRoot":"","sources":["../../src/parameters.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,2BAA2B,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEtF,MAAM,WAAW,4CAA4C;IAC3D,uDAAuD;IACvD,IAAI,EAAE,2BAA2B,CAAC;CACnC;AAED,MAAM,WAAW,kDAAkD;IACjE,2BAA2B;IAC3B,WAAW,CAAC,EAAE,kBAAkB,GAAG,WAAW,CAAC;CAChD;AAED,MAAM,MAAM,6CAA6C,GACvD,kDAAkD,GAChD,4CAA4C,GAC5C,iBAAiB,CAAC;AAEtB,MAAM,WAAW,yCAAyC;IACxD,0BAA0B;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,sDAAsD;IACrE,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,4CAA4C;IAC3D,eAAe,CAAC,EAAE,sDAAsD,CAAC;CAC1E;AAED,MAAM,WAAW,6CAA6C;IAC5D,OAAO,EAAE,mBAAmB,GAAG,yCAAyC,CAAC;CAC1E;AAED,MAAM,MAAM,4CAA4C,GACtD,4CAA4C,GAC1C,6CAA6C,GAC7C,iBAAiB,CAAC;AAEtB,MAAM,WAAW,4CAA4C;IAC3D,+CAA+C;IAC/C,IAAI,EAAE,qBAAqB,CAAC;CAC7B;AAED,MAAM,WAAW,kDAAkD;IACjE,2BAA2B;IAC3B,WAAW,CAAC,EAAE,kBAAkB,GAAG,WAAW,CAAC;CAChD;AAED,MAAM,MAAM,6CAA6C,GACvD,kDAAkD,GAChD,4CAA4C,GAC5C,iBAAiB,CAAC;AACtB,MAAM,MAAM,8CAA8C,GAAG,iBAAiB,CAAC;AAE/E,MAAM,WAAW,2DAA2D;IAC1E,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iDAAiD;IAChE,eAAe,CAAC,EAAE,2DAA2D,CAAC;CAC/E;AAED,MAAM,MAAM,iDAAiD,GAC3D,iDAAiD,GAAG,iBAAiB,CAAC;AAExE,MAAM,WAAW,sDAAsD;IACrE,yCAAyC;IACzC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,4CAA4C;IAC3D,eAAe,CAAC,EAAE,sDAAsD,CAAC;CAC1E;AAED,MAAM,MAAM,4CAA4C,GACtD,4CAA4C,GAAG,iBAAiB,CAAC;AACnE,MAAM,MAAM,8CAA8C,GAAG,iBAAiB,CAAC;AAC/E,MAAM,MAAM,mCAAmC,GAAG,iBAAiB,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ //# sourceMappingURL=parameters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parameters.js","sourceRoot":"","sources":["../../src/parameters.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { RawHttpHeadersInput } from \"@azure/core-rest-pipeline\";\nimport type { RequestParameters } from \"@azure-rest/core-client\";\nimport type { CheckPrincipalAccessRequest, RoleAssignmentRequest } from \"./models.js\";\n\nexport interface RoleAssignmentsCheckPrincipalAccessBodyParam {\n /** Details of scope, list of actions and principal. */\n body: CheckPrincipalAccessRequest;\n}\n\nexport interface RoleAssignmentsCheckPrincipalAccessMediaTypesParam {\n /** Request content type */\n contentType?: \"application/json\" | \"text/json\";\n}\n\nexport type RoleAssignmentsCheckPrincipalAccessParameters =\n RoleAssignmentsCheckPrincipalAccessMediaTypesParam &\n RoleAssignmentsCheckPrincipalAccessBodyParam &\n RequestParameters;\n\nexport interface RoleAssignmentsListRoleAssignmentsHeaders {\n /** Continuation token. */\n \"x-ms-continuation\"?: string;\n}\n\nexport interface RoleAssignmentsListRoleAssignmentsQueryParamProperties {\n /** Synapse Built-In Role Id. */\n roleId?: string;\n /** Object ID of the AAD principal or security-group. */\n principalId?: string;\n /** Scope of the Synapse Built-in Role. */\n scope?: string;\n}\n\nexport interface RoleAssignmentsListRoleAssignmentsQueryParam {\n queryParameters?: RoleAssignmentsListRoleAssignmentsQueryParamProperties;\n}\n\nexport interface RoleAssignmentsListRoleAssignmentsHeaderParam {\n headers: RawHttpHeadersInput & RoleAssignmentsListRoleAssignmentsHeaders;\n}\n\nexport type RoleAssignmentsListRoleAssignmentsParameters =\n RoleAssignmentsListRoleAssignmentsQueryParam &\n RoleAssignmentsListRoleAssignmentsHeaderParam &\n RequestParameters;\n\nexport interface RoleAssignmentsCreateRoleAssignmentBodyParam {\n /** Details of role id, scope and object id. */\n body: RoleAssignmentRequest;\n}\n\nexport interface RoleAssignmentsCreateRoleAssignmentMediaTypesParam {\n /** Request content type */\n contentType?: \"application/json\" | \"text/json\";\n}\n\nexport type RoleAssignmentsCreateRoleAssignmentParameters =\n RoleAssignmentsCreateRoleAssignmentMediaTypesParam &\n RoleAssignmentsCreateRoleAssignmentBodyParam &\n RequestParameters;\nexport type RoleAssignmentsGetRoleAssignmentByIdParameters = RequestParameters;\n\nexport interface RoleAssignmentsDeleteRoleAssignmentByIdQueryParamProperties {\n /** Scope of the Synapse Built-in Role. */\n scope?: string;\n}\n\nexport interface RoleAssignmentsDeleteRoleAssignmentByIdQueryParam {\n queryParameters?: RoleAssignmentsDeleteRoleAssignmentByIdQueryParamProperties;\n}\n\nexport type RoleAssignmentsDeleteRoleAssignmentByIdParameters =\n RoleAssignmentsDeleteRoleAssignmentByIdQueryParam & RequestParameters;\n\nexport interface RoleDefinitionsListRoleDefinitionsQueryParamProperties {\n /** Is a Synapse Built-In Role or not. */\n isBuiltIn?: boolean;\n /** Scope of the Synapse Built-in Role. */\n scope?: string;\n}\n\nexport interface RoleDefinitionsListRoleDefinitionsQueryParam {\n queryParameters?: RoleDefinitionsListRoleDefinitionsQueryParamProperties;\n}\n\nexport type RoleDefinitionsListRoleDefinitionsParameters =\n RoleDefinitionsListRoleDefinitionsQueryParam & RequestParameters;\nexport type RoleDefinitionsGetRoleDefinitionByIdParameters = RequestParameters;\nexport type RoleDefinitionsListScopesParameters = RequestParameters;\n"]}
@@ -0,0 +1,94 @@
1
+ import type { RawHttpHeaders } from "@azure/core-rest-pipeline";
2
+ import type { HttpResponse } from "@azure-rest/core-client";
3
+ import type { CheckPrincipalAccessResponseOutput, ErrorContractOutput, RoleAssignmentDetailsListOutput, RoleAssignmentDetailsOutput, SynapseRoleDefinitionOutput } from "./outputModels.js";
4
+ /** Check if the given principalId has access to perform list of actions at a given scope. */
5
+ export interface RoleAssignmentsCheckPrincipalAccess200Response extends HttpResponse {
6
+ status: "200";
7
+ body: CheckPrincipalAccessResponseOutput;
8
+ }
9
+ /** Check if the given principalId has access to perform list of actions at a given scope. */
10
+ export interface RoleAssignmentsCheckPrincipalAccessdefaultResponse extends HttpResponse {
11
+ status: string;
12
+ body: ErrorContractOutput;
13
+ }
14
+ export interface RoleAssignmentsListRoleAssignments200Headers {
15
+ /** If the number of role assignments to be listed exceeds the maxResults limit, a continuation token is returned in this response header. When a continuation token is returned in the response, it must be specified in a subsequent invocation of the list operation to continue listing the role assignments. */
16
+ "x-ms-continuation"?: string;
17
+ }
18
+ /** List role assignments. */
19
+ export interface RoleAssignmentsListRoleAssignments200Response extends HttpResponse {
20
+ status: "200";
21
+ body: RoleAssignmentDetailsListOutput;
22
+ headers: RawHttpHeaders & RoleAssignmentsListRoleAssignments200Headers;
23
+ }
24
+ /** List role assignments. */
25
+ export interface RoleAssignmentsListRoleAssignmentsdefaultResponse extends HttpResponse {
26
+ status: string;
27
+ body: ErrorContractOutput;
28
+ }
29
+ /** Create role assignment. */
30
+ export interface RoleAssignmentsCreateRoleAssignment200Response extends HttpResponse {
31
+ status: "200";
32
+ body: RoleAssignmentDetailsOutput;
33
+ }
34
+ /** Create role assignment. */
35
+ export interface RoleAssignmentsCreateRoleAssignmentdefaultResponse extends HttpResponse {
36
+ status: string;
37
+ body: ErrorContractOutput;
38
+ }
39
+ /** Get role assignment by role assignment Id. */
40
+ export interface RoleAssignmentsGetRoleAssignmentById200Response extends HttpResponse {
41
+ status: "200";
42
+ body: RoleAssignmentDetailsOutput;
43
+ }
44
+ /** Get role assignment by role assignment Id. */
45
+ export interface RoleAssignmentsGetRoleAssignmentByIddefaultResponse extends HttpResponse {
46
+ status: string;
47
+ body: ErrorContractOutput;
48
+ }
49
+ /** Delete role assignment by role assignment Id. */
50
+ export interface RoleAssignmentsDeleteRoleAssignmentById200Response extends HttpResponse {
51
+ status: "200";
52
+ body: Record<string, unknown>;
53
+ }
54
+ /** Delete role assignment by role assignment Id. */
55
+ export interface RoleAssignmentsDeleteRoleAssignmentById204Response extends HttpResponse {
56
+ status: "204";
57
+ body: Record<string, unknown>;
58
+ }
59
+ /** Delete role assignment by role assignment Id. */
60
+ export interface RoleAssignmentsDeleteRoleAssignmentByIddefaultResponse extends HttpResponse {
61
+ status: string;
62
+ body: ErrorContractOutput;
63
+ }
64
+ /** List role definitions. */
65
+ export interface RoleDefinitionsListRoleDefinitions200Response extends HttpResponse {
66
+ status: "200";
67
+ body: Array<SynapseRoleDefinitionOutput>;
68
+ }
69
+ /** List role definitions. */
70
+ export interface RoleDefinitionsListRoleDefinitionsdefaultResponse extends HttpResponse {
71
+ status: string;
72
+ body: ErrorContractOutput;
73
+ }
74
+ /** Get role definition by role definition Id. */
75
+ export interface RoleDefinitionsGetRoleDefinitionById200Response extends HttpResponse {
76
+ status: "200";
77
+ body: SynapseRoleDefinitionOutput;
78
+ }
79
+ /** Get role definition by role definition Id. */
80
+ export interface RoleDefinitionsGetRoleDefinitionByIddefaultResponse extends HttpResponse {
81
+ status: string;
82
+ body: ErrorContractOutput;
83
+ }
84
+ /** List rbac scopes. */
85
+ export interface RoleDefinitionsListScopes200Response extends HttpResponse {
86
+ status: "200";
87
+ body: Array<string>;
88
+ }
89
+ /** List rbac scopes. */
90
+ export interface RoleDefinitionsListScopesdefaultResponse extends HttpResponse {
91
+ status: string;
92
+ body: ErrorContractOutput;
93
+ }
94
+ //# sourceMappingURL=responses.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"responses.d.ts","sourceRoot":"","sources":["../../src/responses.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ //# sourceMappingURL=responses.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"responses.js","sourceRoot":"","sources":["../../src/responses.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { RawHttpHeaders } from \"@azure/core-rest-pipeline\";\nimport type { HttpResponse } from \"@azure-rest/core-client\";\nimport type {\n CheckPrincipalAccessResponseOutput,\n ErrorContractOutput,\n RoleAssignmentDetailsListOutput,\n RoleAssignmentDetailsOutput,\n SynapseRoleDefinitionOutput,\n} from \"./outputModels.js\";\n\n/** Check if the given principalId has access to perform list of actions at a given scope. */\nexport interface RoleAssignmentsCheckPrincipalAccess200Response extends HttpResponse {\n status: \"200\";\n body: CheckPrincipalAccessResponseOutput;\n}\n\n/** Check if the given principalId has access to perform list of actions at a given scope. */\nexport interface RoleAssignmentsCheckPrincipalAccessdefaultResponse extends HttpResponse {\n status: string;\n body: ErrorContractOutput;\n}\n\nexport interface RoleAssignmentsListRoleAssignments200Headers {\n /** If the number of role assignments to be listed exceeds the maxResults limit, a continuation token is returned in this response header. When a continuation token is returned in the response, it must be specified in a subsequent invocation of the list operation to continue listing the role assignments. */\n \"x-ms-continuation\"?: string;\n}\n\n/** List role assignments. */\nexport interface RoleAssignmentsListRoleAssignments200Response extends HttpResponse {\n status: \"200\";\n body: RoleAssignmentDetailsListOutput;\n headers: RawHttpHeaders & RoleAssignmentsListRoleAssignments200Headers;\n}\n\n/** List role assignments. */\nexport interface RoleAssignmentsListRoleAssignmentsdefaultResponse extends HttpResponse {\n status: string;\n body: ErrorContractOutput;\n}\n\n/** Create role assignment. */\nexport interface RoleAssignmentsCreateRoleAssignment200Response extends HttpResponse {\n status: \"200\";\n body: RoleAssignmentDetailsOutput;\n}\n\n/** Create role assignment. */\nexport interface RoleAssignmentsCreateRoleAssignmentdefaultResponse extends HttpResponse {\n status: string;\n body: ErrorContractOutput;\n}\n\n/** Get role assignment by role assignment Id. */\nexport interface RoleAssignmentsGetRoleAssignmentById200Response extends HttpResponse {\n status: \"200\";\n body: RoleAssignmentDetailsOutput;\n}\n\n/** Get role assignment by role assignment Id. */\nexport interface RoleAssignmentsGetRoleAssignmentByIddefaultResponse extends HttpResponse {\n status: string;\n body: ErrorContractOutput;\n}\n\n/** Delete role assignment by role assignment Id. */\nexport interface RoleAssignmentsDeleteRoleAssignmentById200Response extends HttpResponse {\n status: \"200\";\n body: Record<string, unknown>;\n}\n\n/** Delete role assignment by role assignment Id. */\nexport interface RoleAssignmentsDeleteRoleAssignmentById204Response extends HttpResponse {\n status: \"204\";\n body: Record<string, unknown>;\n}\n\n/** Delete role assignment by role assignment Id. */\nexport interface RoleAssignmentsDeleteRoleAssignmentByIddefaultResponse extends HttpResponse {\n status: string;\n body: ErrorContractOutput;\n}\n\n/** List role definitions. */\nexport interface RoleDefinitionsListRoleDefinitions200Response extends HttpResponse {\n status: \"200\";\n body: Array<SynapseRoleDefinitionOutput>;\n}\n\n/** List role definitions. */\nexport interface RoleDefinitionsListRoleDefinitionsdefaultResponse extends HttpResponse {\n status: string;\n body: ErrorContractOutput;\n}\n\n/** Get role definition by role definition Id. */\nexport interface RoleDefinitionsGetRoleDefinitionById200Response extends HttpResponse {\n status: \"200\";\n body: SynapseRoleDefinitionOutput;\n}\n\n/** Get role definition by role definition Id. */\nexport interface RoleDefinitionsGetRoleDefinitionByIddefaultResponse extends HttpResponse {\n status: string;\n body: ErrorContractOutput;\n}\n\n/** List rbac scopes. */\nexport interface RoleDefinitionsListScopes200Response extends HttpResponse {\n status: \"200\";\n body: Array<string>;\n}\n\n/** List rbac scopes. */\nexport interface RoleDefinitionsListScopesdefaultResponse extends HttpResponse {\n status: string;\n body: ErrorContractOutput;\n}\n"]}
@@ -0,0 +1,11 @@
1
+ // This file is read by tools that parse documentation comments conforming to the TSDoc standard.
2
+ // It should be published with your NPM package. It should not be tracked by Git.
3
+ {
4
+ "tsdocVersion": "0.12",
5
+ "toolPackages": [
6
+ {
7
+ "packageName": "@microsoft/api-extractor",
8
+ "packageVersion": "7.48.0"
9
+ }
10
+ ]
11
+ }
@@ -0,0 +1,5 @@
1
+ import type { ClientOptions } from "@azure-rest/core-client";
2
+ import type { TokenCredential } from "@azure/core-auth";
3
+ import type { AccessControlRestClient } from "./clientDefinitions.js";
4
+ export default function createClient(endpoint: string, credentials: TokenCredential, options?: ClientOptions): AccessControlRestClient;
5
+ //# sourceMappingURL=accessControlRestClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accessControlRestClient.d.ts","sourceRoot":"","sources":["../../src/accessControlRestClient.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEtE,MAAM,CAAC,OAAO,UAAU,YAAY,CAClC,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,eAAe,EAC5B,OAAO,GAAE,aAAkB,GAC1B,uBAAuB,CAyBzB"}
@@ -0,0 +1,21 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT License.
3
+ import { getClient } from "@azure-rest/core-client";
4
+ export default function createClient(endpoint, credentials, options = {}) {
5
+ var _a, _b;
6
+ const baseUrl = (_a = options.baseUrl) !== null && _a !== void 0 ? _a : `${endpoint}`;
7
+ options.apiVersion = (_b = options.apiVersion) !== null && _b !== void 0 ? _b : "2020-12-01";
8
+ options = Object.assign(Object.assign({}, options), { credentials: {
9
+ scopes: ["https://dev.azuresynapse.net/.default"],
10
+ } });
11
+ const userAgentInfo = `azsdk-js-synapse-access-control-rest/1.0.0-beta.1`;
12
+ const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix
13
+ ? `${options.userAgentOptions.userAgentPrefix} ${userAgentInfo}`
14
+ : `${userAgentInfo}`;
15
+ options = Object.assign(Object.assign({}, options), { userAgentOptions: {
16
+ userAgentPrefix,
17
+ } });
18
+ const client = getClient(baseUrl, credentials, options);
19
+ return client;
20
+ }
21
+ //# sourceMappingURL=accessControlRestClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accessControlRestClient.js","sourceRoot":"","sources":["../../src/accessControlRestClient.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAGlC,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAIpD,MAAM,CAAC,OAAO,UAAU,YAAY,CAClC,QAAgB,EAChB,WAA4B,EAC5B,UAAyB,EAAE;;IAE3B,MAAM,OAAO,GAAG,MAAA,OAAO,CAAC,OAAO,mCAAI,GAAG,QAAQ,EAAE,CAAC;IACjD,OAAO,CAAC,UAAU,GAAG,MAAA,OAAO,CAAC,UAAU,mCAAI,YAAY,CAAC;IACxD,OAAO,mCACF,OAAO,KACV,WAAW,EAAE;YACX,MAAM,EAAE,CAAC,uCAAuC,CAAC;SAClD,GACF,CAAC;IAEF,MAAM,aAAa,GAAG,mDAAmD,CAAC;IAC1E,MAAM,eAAe,GACnB,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,gBAAgB,CAAC,eAAe;QAClE,CAAC,CAAC,GAAG,OAAO,CAAC,gBAAgB,CAAC,eAAe,IAAI,aAAa,EAAE;QAChE,CAAC,CAAC,GAAG,aAAa,EAAE,CAAC;IACzB,OAAO,mCACF,OAAO,KACV,gBAAgB,EAAE;YAChB,eAAe;SAChB,GACF,CAAC;IAEF,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,CAA4B,CAAC;IAEnF,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { ClientOptions } from \"@azure-rest/core-client\";\nimport { getClient } from \"@azure-rest/core-client\";\nimport type { TokenCredential } from \"@azure/core-auth\";\nimport type { AccessControlRestClient } from \"./clientDefinitions.js\";\n\nexport default function createClient(\n endpoint: string,\n credentials: TokenCredential,\n options: ClientOptions = {},\n): AccessControlRestClient {\n const baseUrl = options.baseUrl ?? `${endpoint}`;\n options.apiVersion = options.apiVersion ?? \"2020-12-01\";\n options = {\n ...options,\n credentials: {\n scopes: [\"https://dev.azuresynapse.net/.default\"],\n },\n };\n\n const userAgentInfo = `azsdk-js-synapse-access-control-rest/1.0.0-beta.1`;\n const userAgentPrefix =\n options.userAgentOptions && options.userAgentOptions.userAgentPrefix\n ? `${options.userAgentOptions.userAgentPrefix} ${userAgentInfo}`\n : `${userAgentInfo}`;\n options = {\n ...options,\n userAgentOptions: {\n userAgentPrefix,\n },\n };\n\n const client = getClient(baseUrl, credentials, options) as AccessControlRestClient;\n\n return client;\n}\n"]}
@@ -0,0 +1,49 @@
1
+ import type { RoleAssignmentsCheckPrincipalAccessParameters, RoleAssignmentsListRoleAssignmentsParameters, RoleAssignmentsCreateRoleAssignmentParameters, RoleAssignmentsGetRoleAssignmentByIdParameters, RoleAssignmentsDeleteRoleAssignmentByIdParameters, RoleDefinitionsListRoleDefinitionsParameters, RoleDefinitionsGetRoleDefinitionByIdParameters, RoleDefinitionsListScopesParameters } from "./parameters.js";
2
+ import type { RoleAssignmentsCheckPrincipalAccess200Response, RoleAssignmentsCheckPrincipalAccessdefaultResponse, RoleAssignmentsListRoleAssignments200Response, RoleAssignmentsListRoleAssignmentsdefaultResponse, RoleAssignmentsCreateRoleAssignment200Response, RoleAssignmentsCreateRoleAssignmentdefaultResponse, RoleAssignmentsGetRoleAssignmentById200Response, RoleAssignmentsGetRoleAssignmentByIddefaultResponse, RoleAssignmentsDeleteRoleAssignmentById200Response, RoleAssignmentsDeleteRoleAssignmentById204Response, RoleAssignmentsDeleteRoleAssignmentByIddefaultResponse, RoleDefinitionsListRoleDefinitions200Response, RoleDefinitionsListRoleDefinitionsdefaultResponse, RoleDefinitionsGetRoleDefinitionById200Response, RoleDefinitionsGetRoleDefinitionByIddefaultResponse, RoleDefinitionsListScopes200Response, RoleDefinitionsListScopesdefaultResponse } from "./responses.js";
3
+ import type { Client, StreamableMethod } from "@azure-rest/core-client";
4
+ export interface RoleAssignmentsCheckPrincipalAccess {
5
+ /** Check if the given principalId has access to perform list of actions at a given scope. */
6
+ post(options: RoleAssignmentsCheckPrincipalAccessParameters): StreamableMethod<RoleAssignmentsCheckPrincipalAccess200Response | RoleAssignmentsCheckPrincipalAccessdefaultResponse>;
7
+ }
8
+ export interface RoleAssignmentsListRoleAssignments {
9
+ /** List role assignments. */
10
+ get(options?: RoleAssignmentsListRoleAssignmentsParameters): StreamableMethod<RoleAssignmentsListRoleAssignments200Response | RoleAssignmentsListRoleAssignmentsdefaultResponse>;
11
+ }
12
+ export interface RoleAssignmentsCreateRoleAssignment {
13
+ /** Create role assignment. */
14
+ put(options: RoleAssignmentsCreateRoleAssignmentParameters): StreamableMethod<RoleAssignmentsCreateRoleAssignment200Response | RoleAssignmentsCreateRoleAssignmentdefaultResponse>;
15
+ /** Get role assignment by role assignment Id. */
16
+ get(options?: RoleAssignmentsGetRoleAssignmentByIdParameters): StreamableMethod<RoleAssignmentsGetRoleAssignmentById200Response | RoleAssignmentsGetRoleAssignmentByIddefaultResponse>;
17
+ /** Delete role assignment by role assignment Id. */
18
+ delete(options?: RoleAssignmentsDeleteRoleAssignmentByIdParameters): StreamableMethod<RoleAssignmentsDeleteRoleAssignmentById200Response | RoleAssignmentsDeleteRoleAssignmentById204Response | RoleAssignmentsDeleteRoleAssignmentByIddefaultResponse>;
19
+ }
20
+ export interface RoleDefinitionsListRoleDefinitions {
21
+ /** List role definitions. */
22
+ get(options?: RoleDefinitionsListRoleDefinitionsParameters): StreamableMethod<RoleDefinitionsListRoleDefinitions200Response | RoleDefinitionsListRoleDefinitionsdefaultResponse>;
23
+ }
24
+ export interface RoleDefinitionsGetRoleDefinitionById {
25
+ /** Get role definition by role definition Id. */
26
+ get(options?: RoleDefinitionsGetRoleDefinitionByIdParameters): StreamableMethod<RoleDefinitionsGetRoleDefinitionById200Response | RoleDefinitionsGetRoleDefinitionByIddefaultResponse>;
27
+ }
28
+ export interface RoleDefinitionsListScopes {
29
+ /** List rbac scopes. */
30
+ get(options?: RoleDefinitionsListScopesParameters): StreamableMethod<RoleDefinitionsListScopes200Response | RoleDefinitionsListScopesdefaultResponse>;
31
+ }
32
+ export interface Routes {
33
+ /** Resource for '/checkAccessSynapseRbac' has methods for the following verbs: post */
34
+ (path: "/checkAccessSynapseRbac"): RoleAssignmentsCheckPrincipalAccess;
35
+ /** Resource for '/roleAssignments' has methods for the following verbs: get */
36
+ (path: "/roleAssignments"): RoleAssignmentsListRoleAssignments;
37
+ /** Resource for '/roleAssignments/\{roleAssignmentId\}' has methods for the following verbs: put, get, delete */
38
+ (path: "/roleAssignments/{roleAssignmentId}", roleAssignmentId: string): RoleAssignmentsCreateRoleAssignment;
39
+ /** Resource for '/roleDefinitions' has methods for the following verbs: get */
40
+ (path: "/roleDefinitions"): RoleDefinitionsListRoleDefinitions;
41
+ /** Resource for '/roleDefinitions/\{roleDefinitionId\}' has methods for the following verbs: get */
42
+ (path: "/roleDefinitions/{roleDefinitionId}", roleDefinitionId: string): RoleDefinitionsGetRoleDefinitionById;
43
+ /** Resource for '/rbacScopes' has methods for the following verbs: get */
44
+ (path: "/rbacScopes"): RoleDefinitionsListScopes;
45
+ }
46
+ export type AccessControlRestClient = Client & {
47
+ path: Routes;
48
+ };
49
+ //# sourceMappingURL=clientDefinitions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clientDefinitions.d.ts","sourceRoot":"","sources":["../../src/clientDefinitions.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,6CAA6C,EAC7C,4CAA4C,EAC5C,6CAA6C,EAC7C,8CAA8C,EAC9C,iDAAiD,EACjD,4CAA4C,EAC5C,8CAA8C,EAC9C,mCAAmC,EACpC,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EACV,8CAA8C,EAC9C,kDAAkD,EAClD,6CAA6C,EAC7C,iDAAiD,EACjD,8CAA8C,EAC9C,kDAAkD,EAClD,+CAA+C,EAC/C,mDAAmD,EACnD,kDAAkD,EAClD,kDAAkD,EAClD,sDAAsD,EACtD,6CAA6C,EAC7C,iDAAiD,EACjD,+CAA+C,EAC/C,mDAAmD,EACnD,oCAAoC,EACpC,wCAAwC,EACzC,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAExE,MAAM,WAAW,mCAAmC;IAClD,6FAA6F;IAC7F,IAAI,CACF,OAAO,EAAE,6CAA6C,GACrD,gBAAgB,CACf,8CAA8C,GAC9C,kDAAkD,CACrD,CAAC;CACH;AAED,MAAM,WAAW,kCAAkC;IACjD,6BAA6B;IAC7B,GAAG,CACD,OAAO,CAAC,EAAE,4CAA4C,GACrD,gBAAgB,CACf,6CAA6C,GAC7C,iDAAiD,CACpD,CAAC;CACH;AAED,MAAM,WAAW,mCAAmC;IAClD,8BAA8B;IAC9B,GAAG,CACD,OAAO,EAAE,6CAA6C,GACrD,gBAAgB,CACf,8CAA8C,GAC9C,kDAAkD,CACrD,CAAC;IACF,iDAAiD;IACjD,GAAG,CACD,OAAO,CAAC,EAAE,8CAA8C,GACvD,gBAAgB,CACf,+CAA+C,GAC/C,mDAAmD,CACtD,CAAC;IACF,oDAAoD;IACpD,MAAM,CACJ,OAAO,CAAC,EAAE,iDAAiD,GAC1D,gBAAgB,CACf,kDAAkD,GAClD,kDAAkD,GAClD,sDAAsD,CACzD,CAAC;CACH;AAED,MAAM,WAAW,kCAAkC;IACjD,6BAA6B;IAC7B,GAAG,CACD,OAAO,CAAC,EAAE,4CAA4C,GACrD,gBAAgB,CACf,6CAA6C,GAC7C,iDAAiD,CACpD,CAAC;CACH;AAED,MAAM,WAAW,oCAAoC;IACnD,iDAAiD;IACjD,GAAG,CACD,OAAO,CAAC,EAAE,8CAA8C,GACvD,gBAAgB,CACf,+CAA+C,GAC/C,mDAAmD,CACtD,CAAC;CACH;AAED,MAAM,WAAW,yBAAyB;IACxC,wBAAwB;IACxB,GAAG,CACD,OAAO,CAAC,EAAE,mCAAmC,GAC5C,gBAAgB,CACjB,oCAAoC,GAAG,wCAAwC,CAChF,CAAC;CACH;AAED,MAAM,WAAW,MAAM;IACrB,uFAAuF;IACvF,CAAC,IAAI,EAAE,yBAAyB,GAAG,mCAAmC,CAAC;IACvE,+EAA+E;IAC/E,CAAC,IAAI,EAAE,kBAAkB,GAAG,kCAAkC,CAAC;IAC/D,iHAAiH;IACjH,CACE,IAAI,EAAE,qCAAqC,EAC3C,gBAAgB,EAAE,MAAM,GACvB,mCAAmC,CAAC;IACvC,+EAA+E;IAC/E,CAAC,IAAI,EAAE,kBAAkB,GAAG,kCAAkC,CAAC;IAC/D,oGAAoG;IACpG,CACE,IAAI,EAAE,qCAAqC,EAC3C,gBAAgB,EAAE,MAAM,GACvB,oCAAoC,CAAC;IACxC,0EAA0E;IAC1E,CAAC,IAAI,EAAE,aAAa,GAAG,yBAAyB,CAAC;CAClD;AAED,MAAM,MAAM,uBAAuB,GAAG,MAAM,GAAG;IAC7C,IAAI,EAAE,MAAM,CAAC;CACd,CAAC"}
@@ -0,0 +1,4 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT License.
3
+ export {};
4
+ //# sourceMappingURL=clientDefinitions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clientDefinitions.js","sourceRoot":"","sources":["../../src/clientDefinitions.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type {\n RoleAssignmentsCheckPrincipalAccessParameters,\n RoleAssignmentsListRoleAssignmentsParameters,\n RoleAssignmentsCreateRoleAssignmentParameters,\n RoleAssignmentsGetRoleAssignmentByIdParameters,\n RoleAssignmentsDeleteRoleAssignmentByIdParameters,\n RoleDefinitionsListRoleDefinitionsParameters,\n RoleDefinitionsGetRoleDefinitionByIdParameters,\n RoleDefinitionsListScopesParameters,\n} from \"./parameters.js\";\nimport type {\n RoleAssignmentsCheckPrincipalAccess200Response,\n RoleAssignmentsCheckPrincipalAccessdefaultResponse,\n RoleAssignmentsListRoleAssignments200Response,\n RoleAssignmentsListRoleAssignmentsdefaultResponse,\n RoleAssignmentsCreateRoleAssignment200Response,\n RoleAssignmentsCreateRoleAssignmentdefaultResponse,\n RoleAssignmentsGetRoleAssignmentById200Response,\n RoleAssignmentsGetRoleAssignmentByIddefaultResponse,\n RoleAssignmentsDeleteRoleAssignmentById200Response,\n RoleAssignmentsDeleteRoleAssignmentById204Response,\n RoleAssignmentsDeleteRoleAssignmentByIddefaultResponse,\n RoleDefinitionsListRoleDefinitions200Response,\n RoleDefinitionsListRoleDefinitionsdefaultResponse,\n RoleDefinitionsGetRoleDefinitionById200Response,\n RoleDefinitionsGetRoleDefinitionByIddefaultResponse,\n RoleDefinitionsListScopes200Response,\n RoleDefinitionsListScopesdefaultResponse,\n} from \"./responses.js\";\nimport type { Client, StreamableMethod } from \"@azure-rest/core-client\";\n\nexport interface RoleAssignmentsCheckPrincipalAccess {\n /** Check if the given principalId has access to perform list of actions at a given scope. */\n post(\n options: RoleAssignmentsCheckPrincipalAccessParameters,\n ): StreamableMethod<\n | RoleAssignmentsCheckPrincipalAccess200Response\n | RoleAssignmentsCheckPrincipalAccessdefaultResponse\n >;\n}\n\nexport interface RoleAssignmentsListRoleAssignments {\n /** List role assignments. */\n get(\n options?: RoleAssignmentsListRoleAssignmentsParameters,\n ): StreamableMethod<\n | RoleAssignmentsListRoleAssignments200Response\n | RoleAssignmentsListRoleAssignmentsdefaultResponse\n >;\n}\n\nexport interface RoleAssignmentsCreateRoleAssignment {\n /** Create role assignment. */\n put(\n options: RoleAssignmentsCreateRoleAssignmentParameters,\n ): StreamableMethod<\n | RoleAssignmentsCreateRoleAssignment200Response\n | RoleAssignmentsCreateRoleAssignmentdefaultResponse\n >;\n /** Get role assignment by role assignment Id. */\n get(\n options?: RoleAssignmentsGetRoleAssignmentByIdParameters,\n ): StreamableMethod<\n | RoleAssignmentsGetRoleAssignmentById200Response\n | RoleAssignmentsGetRoleAssignmentByIddefaultResponse\n >;\n /** Delete role assignment by role assignment Id. */\n delete(\n options?: RoleAssignmentsDeleteRoleAssignmentByIdParameters,\n ): StreamableMethod<\n | RoleAssignmentsDeleteRoleAssignmentById200Response\n | RoleAssignmentsDeleteRoleAssignmentById204Response\n | RoleAssignmentsDeleteRoleAssignmentByIddefaultResponse\n >;\n}\n\nexport interface RoleDefinitionsListRoleDefinitions {\n /** List role definitions. */\n get(\n options?: RoleDefinitionsListRoleDefinitionsParameters,\n ): StreamableMethod<\n | RoleDefinitionsListRoleDefinitions200Response\n | RoleDefinitionsListRoleDefinitionsdefaultResponse\n >;\n}\n\nexport interface RoleDefinitionsGetRoleDefinitionById {\n /** Get role definition by role definition Id. */\n get(\n options?: RoleDefinitionsGetRoleDefinitionByIdParameters,\n ): StreamableMethod<\n | RoleDefinitionsGetRoleDefinitionById200Response\n | RoleDefinitionsGetRoleDefinitionByIddefaultResponse\n >;\n}\n\nexport interface RoleDefinitionsListScopes {\n /** List rbac scopes. */\n get(\n options?: RoleDefinitionsListScopesParameters,\n ): StreamableMethod<\n RoleDefinitionsListScopes200Response | RoleDefinitionsListScopesdefaultResponse\n >;\n}\n\nexport interface Routes {\n /** Resource for '/checkAccessSynapseRbac' has methods for the following verbs: post */\n (path: \"/checkAccessSynapseRbac\"): RoleAssignmentsCheckPrincipalAccess;\n /** Resource for '/roleAssignments' has methods for the following verbs: get */\n (path: \"/roleAssignments\"): RoleAssignmentsListRoleAssignments;\n /** Resource for '/roleAssignments/\\{roleAssignmentId\\}' has methods for the following verbs: put, get, delete */\n (\n path: \"/roleAssignments/{roleAssignmentId}\",\n roleAssignmentId: string,\n ): RoleAssignmentsCreateRoleAssignment;\n /** Resource for '/roleDefinitions' has methods for the following verbs: get */\n (path: \"/roleDefinitions\"): RoleDefinitionsListRoleDefinitions;\n /** Resource for '/roleDefinitions/\\{roleDefinitionId\\}' has methods for the following verbs: get */\n (\n path: \"/roleDefinitions/{roleDefinitionId}\",\n roleDefinitionId: string,\n ): RoleDefinitionsGetRoleDefinitionById;\n /** Resource for '/rbacScopes' has methods for the following verbs: get */\n (path: \"/rbacScopes\"): RoleDefinitionsListScopes;\n}\n\nexport type AccessControlRestClient = Client & {\n path: Routes;\n};\n"]}
@@ -0,0 +1,11 @@
1
+ import AccessControlRestClient from "./accessControlRestClient.js";
2
+ export * from "./accessControlRestClient.js";
3
+ export * from "./parameters.js";
4
+ export * from "./responses.js";
5
+ export * from "./clientDefinitions.js";
6
+ export * from "./isUnexpected.js";
7
+ export * from "./models.js";
8
+ export * from "./outputModels.js";
9
+ export * from "./paginateHelper.js";
10
+ export default AccessControlRestClient;
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AAEnE,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AAGpC,eAAe,uBAAuB,CAAC"}
@@ -0,0 +1,14 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT License.
3
+ import AccessControlRestClient from "./accessControlRestClient.js";
4
+ export * from "./accessControlRestClient.js";
5
+ export * from "./parameters.js";
6
+ export * from "./responses.js";
7
+ export * from "./clientDefinitions.js";
8
+ export * from "./isUnexpected.js";
9
+ export * from "./models.js";
10
+ export * from "./outputModels.js";
11
+ export * from "./paginateHelper.js";
12
+ // eslint-disable-next-line @azure/azure-sdk/ts-modules-only-named
13
+ export default AccessControlRestClient;
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AAEnE,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AAEpC,kEAAkE;AAClE,eAAe,uBAAuB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport AccessControlRestClient from \"./accessControlRestClient.js\";\n\nexport * from \"./accessControlRestClient.js\";\nexport * from \"./parameters.js\";\nexport * from \"./responses.js\";\nexport * from \"./clientDefinitions.js\";\nexport * from \"./isUnexpected.js\";\nexport * from \"./models.js\";\nexport * from \"./outputModels.js\";\nexport * from \"./paginateHelper.js\";\n\n// eslint-disable-next-line @azure/azure-sdk/ts-modules-only-named\nexport default AccessControlRestClient;\n"]}
@@ -0,0 +1,10 @@
1
+ import type { RoleAssignmentsCheckPrincipalAccess200Response, RoleAssignmentsCheckPrincipalAccessdefaultResponse, RoleAssignmentsListRoleAssignments200Response, RoleAssignmentsListRoleAssignmentsdefaultResponse, RoleAssignmentsCreateRoleAssignment200Response, RoleAssignmentsCreateRoleAssignmentdefaultResponse, RoleAssignmentsGetRoleAssignmentById200Response, RoleAssignmentsGetRoleAssignmentByIddefaultResponse, RoleAssignmentsDeleteRoleAssignmentById200Response, RoleAssignmentsDeleteRoleAssignmentById204Response, RoleAssignmentsDeleteRoleAssignmentByIddefaultResponse, RoleDefinitionsListRoleDefinitions200Response, RoleDefinitionsListRoleDefinitionsdefaultResponse, RoleDefinitionsGetRoleDefinitionById200Response, RoleDefinitionsGetRoleDefinitionByIddefaultResponse, RoleDefinitionsListScopes200Response, RoleDefinitionsListScopesdefaultResponse } from "./responses.js";
2
+ export declare function isUnexpected(response: RoleAssignmentsCheckPrincipalAccess200Response | RoleAssignmentsCheckPrincipalAccessdefaultResponse): response is RoleAssignmentsCheckPrincipalAccessdefaultResponse;
3
+ export declare function isUnexpected(response: RoleAssignmentsListRoleAssignments200Response | RoleAssignmentsListRoleAssignmentsdefaultResponse): response is RoleAssignmentsListRoleAssignmentsdefaultResponse;
4
+ export declare function isUnexpected(response: RoleAssignmentsCreateRoleAssignment200Response | RoleAssignmentsCreateRoleAssignmentdefaultResponse): response is RoleAssignmentsCreateRoleAssignmentdefaultResponse;
5
+ export declare function isUnexpected(response: RoleAssignmentsGetRoleAssignmentById200Response | RoleAssignmentsGetRoleAssignmentByIddefaultResponse): response is RoleAssignmentsGetRoleAssignmentByIddefaultResponse;
6
+ export declare function isUnexpected(response: RoleAssignmentsDeleteRoleAssignmentById200Response | RoleAssignmentsDeleteRoleAssignmentById204Response | RoleAssignmentsDeleteRoleAssignmentByIddefaultResponse): response is RoleAssignmentsDeleteRoleAssignmentByIddefaultResponse;
7
+ export declare function isUnexpected(response: RoleDefinitionsListRoleDefinitions200Response | RoleDefinitionsListRoleDefinitionsdefaultResponse): response is RoleDefinitionsListRoleDefinitionsdefaultResponse;
8
+ export declare function isUnexpected(response: RoleDefinitionsGetRoleDefinitionById200Response | RoleDefinitionsGetRoleDefinitionByIddefaultResponse): response is RoleDefinitionsGetRoleDefinitionByIddefaultResponse;
9
+ export declare function isUnexpected(response: RoleDefinitionsListScopes200Response | RoleDefinitionsListScopesdefaultResponse): response is RoleDefinitionsListScopesdefaultResponse;
10
+ //# sourceMappingURL=isUnexpected.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isUnexpected.d.ts","sourceRoot":"","sources":["../../src/isUnexpected.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,8CAA8C,EAC9C,kDAAkD,EAClD,6CAA6C,EAC7C,iDAAiD,EACjD,8CAA8C,EAC9C,kDAAkD,EAClD,+CAA+C,EAC/C,mDAAmD,EACnD,kDAAkD,EAClD,kDAAkD,EAClD,sDAAsD,EACtD,6CAA6C,EAC7C,iDAAiD,EACjD,+CAA+C,EAC/C,mDAAmD,EACnD,oCAAoC,EACpC,wCAAwC,EACzC,MAAM,gBAAgB,CAAC;AAaxB,wBAAgB,YAAY,CAC1B,QAAQ,EACJ,8CAA8C,GAC9C,kDAAkD,GACrD,QAAQ,IAAI,kDAAkD,CAAC;AAClE,wBAAgB,YAAY,CAC1B,QAAQ,EACJ,6CAA6C,GAC7C,iDAAiD,GACpD,QAAQ,IAAI,iDAAiD,CAAC;AACjE,wBAAgB,YAAY,CAC1B,QAAQ,EACJ,8CAA8C,GAC9C,kDAAkD,GACrD,QAAQ,IAAI,kDAAkD,CAAC;AAClE,wBAAgB,YAAY,CAC1B,QAAQ,EACJ,+CAA+C,GAC/C,mDAAmD,GACtD,QAAQ,IAAI,mDAAmD,CAAC;AACnE,wBAAgB,YAAY,CAC1B,QAAQ,EACJ,kDAAkD,GAClD,kDAAkD,GAClD,sDAAsD,GACzD,QAAQ,IAAI,sDAAsD,CAAC;AACtE,wBAAgB,YAAY,CAC1B,QAAQ,EACJ,6CAA6C,GAC7C,iDAAiD,GACpD,QAAQ,IAAI,iDAAiD,CAAC;AACjE,wBAAgB,YAAY,CAC1B,QAAQ,EACJ,+CAA+C,GAC/C,mDAAmD,GACtD,QAAQ,IAAI,mDAAmD,CAAC;AACnE,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,oCAAoC,GAAG,wCAAwC,GACxF,QAAQ,IAAI,wCAAwC,CAAC"}
@@ -0,0 +1,70 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT License.
3
+ const responseMap = {
4
+ "POST /checkAccessSynapseRbac": ["200"],
5
+ "GET /roleAssignments": ["200"],
6
+ "PUT /roleAssignments/{roleAssignmentId}": ["200"],
7
+ "GET /roleAssignments/{roleAssignmentId}": ["200"],
8
+ "DELETE /roleAssignments/{roleAssignmentId}": ["200", "204"],
9
+ "GET /roleDefinitions": ["200"],
10
+ "GET /roleDefinitions/{roleDefinitionId}": ["200"],
11
+ "GET /rbacScopes": ["200"],
12
+ };
13
+ export function isUnexpected(response) {
14
+ const lroOriginal = response.headers["x-ms-original-url"];
15
+ const url = new URL(lroOriginal !== null && lroOriginal !== void 0 ? lroOriginal : response.request.url);
16
+ const method = response.request.method;
17
+ let pathDetails = responseMap[`${method} ${url.pathname}`];
18
+ if (!pathDetails) {
19
+ pathDetails = geParametrizedPathSuccess(url.pathname);
20
+ }
21
+ return !pathDetails.includes(response.status);
22
+ }
23
+ function geParametrizedPathSuccess(path) {
24
+ const pathParts = path.split("/");
25
+ // Iterate the responseMap to find a match
26
+ for (const [key, value] of Object.entries(responseMap)) {
27
+ // Extracting the path from the map key which is in format
28
+ // GET /path/foo
29
+ const candidatePath = getPathFromMapKey(key);
30
+ // Get each part of the url path
31
+ const candidateParts = candidatePath.split("/");
32
+ // If the candidate and actual paths don't match in size
33
+ // we move on to the next candidate path
34
+ if (candidateParts.length === pathParts.length && hasParametrizedPath(key)) {
35
+ // track if we have found a match to return the values found.
36
+ let found = true;
37
+ for (let i = 0; i < candidateParts.length; i++) {
38
+ if (candidateParts[i].startsWith("{") && candidateParts[i].endsWith("}")) {
39
+ // If the current part of the candidate is a "template" part
40
+ // it is a match with the actual path part on hand
41
+ // skip as the parameterized part can match anything
42
+ continue;
43
+ }
44
+ // If the candidate part is not a template and
45
+ // the parts don't match mark the candidate as not found
46
+ // to move on with the next candidate path.
47
+ if (candidateParts[i] !== pathParts[i]) {
48
+ found = false;
49
+ break;
50
+ }
51
+ }
52
+ // We finished evaluating the current candidate parts
53
+ // if all parts matched we return the success values form
54
+ // the path mapping.
55
+ if (found) {
56
+ return value;
57
+ }
58
+ }
59
+ }
60
+ // No match was found, return an empty array.
61
+ return [];
62
+ }
63
+ function hasParametrizedPath(path) {
64
+ return path.includes("/{");
65
+ }
66
+ function getPathFromMapKey(mapKey) {
67
+ const pathStart = mapKey.indexOf("/");
68
+ return mapKey.slice(pathStart);
69
+ }
70
+ //# sourceMappingURL=isUnexpected.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isUnexpected.js","sourceRoot":"","sources":["../../src/isUnexpected.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type {\n RoleAssignmentsCheckPrincipalAccess200Response,\n RoleAssignmentsCheckPrincipalAccessdefaultResponse,\n RoleAssignmentsListRoleAssignments200Response,\n RoleAssignmentsListRoleAssignmentsdefaultResponse,\n RoleAssignmentsCreateRoleAssignment200Response,\n RoleAssignmentsCreateRoleAssignmentdefaultResponse,\n RoleAssignmentsGetRoleAssignmentById200Response,\n RoleAssignmentsGetRoleAssignmentByIddefaultResponse,\n RoleAssignmentsDeleteRoleAssignmentById200Response,\n RoleAssignmentsDeleteRoleAssignmentById204Response,\n RoleAssignmentsDeleteRoleAssignmentByIddefaultResponse,\n RoleDefinitionsListRoleDefinitions200Response,\n RoleDefinitionsListRoleDefinitionsdefaultResponse,\n RoleDefinitionsGetRoleDefinitionById200Response,\n RoleDefinitionsGetRoleDefinitionByIddefaultResponse,\n RoleDefinitionsListScopes200Response,\n RoleDefinitionsListScopesdefaultResponse,\n} from \"./responses.js\";\n\nconst responseMap: Record<string, string[]> = {\n \"POST /checkAccessSynapseRbac\": [\"200\"],\n \"GET /roleAssignments\": [\"200\"],\n \"PUT /roleAssignments/{roleAssignmentId}\": [\"200\"],\n \"GET /roleAssignments/{roleAssignmentId}\": [\"200\"],\n \"DELETE /roleAssignments/{roleAssignmentId}\": [\"200\", \"204\"],\n \"GET /roleDefinitions\": [\"200\"],\n \"GET /roleDefinitions/{roleDefinitionId}\": [\"200\"],\n \"GET /rbacScopes\": [\"200\"],\n};\n\nexport function isUnexpected(\n response:\n | RoleAssignmentsCheckPrincipalAccess200Response\n | RoleAssignmentsCheckPrincipalAccessdefaultResponse,\n): response is RoleAssignmentsCheckPrincipalAccessdefaultResponse;\nexport function isUnexpected(\n response:\n | RoleAssignmentsListRoleAssignments200Response\n | RoleAssignmentsListRoleAssignmentsdefaultResponse,\n): response is RoleAssignmentsListRoleAssignmentsdefaultResponse;\nexport function isUnexpected(\n response:\n | RoleAssignmentsCreateRoleAssignment200Response\n | RoleAssignmentsCreateRoleAssignmentdefaultResponse,\n): response is RoleAssignmentsCreateRoleAssignmentdefaultResponse;\nexport function isUnexpected(\n response:\n | RoleAssignmentsGetRoleAssignmentById200Response\n | RoleAssignmentsGetRoleAssignmentByIddefaultResponse,\n): response is RoleAssignmentsGetRoleAssignmentByIddefaultResponse;\nexport function isUnexpected(\n response:\n | RoleAssignmentsDeleteRoleAssignmentById200Response\n | RoleAssignmentsDeleteRoleAssignmentById204Response\n | RoleAssignmentsDeleteRoleAssignmentByIddefaultResponse,\n): response is RoleAssignmentsDeleteRoleAssignmentByIddefaultResponse;\nexport function isUnexpected(\n response:\n | RoleDefinitionsListRoleDefinitions200Response\n | RoleDefinitionsListRoleDefinitionsdefaultResponse,\n): response is RoleDefinitionsListRoleDefinitionsdefaultResponse;\nexport function isUnexpected(\n response:\n | RoleDefinitionsGetRoleDefinitionById200Response\n | RoleDefinitionsGetRoleDefinitionByIddefaultResponse,\n): response is RoleDefinitionsGetRoleDefinitionByIddefaultResponse;\nexport function isUnexpected(\n response: RoleDefinitionsListScopes200Response | RoleDefinitionsListScopesdefaultResponse,\n): response is RoleDefinitionsListScopesdefaultResponse;\nexport function isUnexpected(\n response:\n | RoleAssignmentsCheckPrincipalAccess200Response\n | RoleAssignmentsCheckPrincipalAccessdefaultResponse\n | RoleAssignmentsListRoleAssignments200Response\n | RoleAssignmentsListRoleAssignmentsdefaultResponse\n | RoleAssignmentsCreateRoleAssignment200Response\n | RoleAssignmentsCreateRoleAssignmentdefaultResponse\n | RoleAssignmentsGetRoleAssignmentById200Response\n | RoleAssignmentsGetRoleAssignmentByIddefaultResponse\n | RoleAssignmentsDeleteRoleAssignmentById200Response\n | RoleAssignmentsDeleteRoleAssignmentById204Response\n | RoleAssignmentsDeleteRoleAssignmentByIddefaultResponse\n | RoleDefinitionsListRoleDefinitions200Response\n | RoleDefinitionsListRoleDefinitionsdefaultResponse\n | RoleDefinitionsGetRoleDefinitionById200Response\n | RoleDefinitionsGetRoleDefinitionByIddefaultResponse\n | RoleDefinitionsListScopes200Response\n | RoleDefinitionsListScopesdefaultResponse,\n): response is\n | RoleAssignmentsCheckPrincipalAccessdefaultResponse\n | RoleAssignmentsListRoleAssignmentsdefaultResponse\n | RoleAssignmentsCreateRoleAssignmentdefaultResponse\n | RoleAssignmentsGetRoleAssignmentByIddefaultResponse\n | RoleAssignmentsDeleteRoleAssignmentByIddefaultResponse\n | RoleDefinitionsListRoleDefinitionsdefaultResponse\n | RoleDefinitionsGetRoleDefinitionByIddefaultResponse\n | RoleDefinitionsListScopesdefaultResponse {\n const lroOriginal = response.headers[\"x-ms-original-url\"];\n const url = new URL(lroOriginal ?? response.request.url);\n const method = response.request.method;\n let pathDetails = responseMap[`${method} ${url.pathname}`];\n if (!pathDetails) {\n pathDetails = geParametrizedPathSuccess(url.pathname);\n }\n return !pathDetails.includes(response.status);\n}\n\nfunction geParametrizedPathSuccess(path: string): string[] {\n const pathParts = path.split(\"/\");\n\n // Iterate the responseMap to find a match\n for (const [key, value] of Object.entries(responseMap)) {\n // Extracting the path from the map key which is in format\n // GET /path/foo\n const candidatePath = getPathFromMapKey(key);\n // Get each part of the url path\n const candidateParts = candidatePath.split(\"/\");\n\n // If the candidate and actual paths don't match in size\n // we move on to the next candidate path\n if (candidateParts.length === pathParts.length && hasParametrizedPath(key)) {\n // track if we have found a match to return the values found.\n let found = true;\n for (let i = 0; i < candidateParts.length; i++) {\n if (candidateParts[i].startsWith(\"{\") && candidateParts[i].endsWith(\"}\")) {\n // If the current part of the candidate is a \"template\" part\n // it is a match with the actual path part on hand\n // skip as the parameterized part can match anything\n continue;\n }\n\n // If the candidate part is not a template and\n // the parts don't match mark the candidate as not found\n // to move on with the next candidate path.\n if (candidateParts[i] !== pathParts[i]) {\n found = false;\n break;\n }\n }\n\n // We finished evaluating the current candidate parts\n // if all parts matched we return the success values form\n // the path mapping.\n if (found) {\n return value;\n }\n }\n }\n\n // No match was found, return an empty array.\n return [];\n}\n\nfunction hasParametrizedPath(path: string): boolean {\n return path.includes(\"/{\");\n}\n\nfunction getPathFromMapKey(mapKey: string): string {\n const pathStart = mapKey.indexOf(\"/\");\n return mapKey.slice(pathStart);\n}\n"]}