@tailor-platform/sdk 2.0.0-next.0 → 2.0.0-next.2

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 (208) hide show
  1. package/CHANGELOG.md +161 -0
  2. package/dist/application-Dtqap5jM.mjs +3 -0
  3. package/dist/{client-CobIRHl-.mjs → application-XuMWK4eq.mjs} +5869 -25
  4. package/dist/application-XuMWK4eq.mjs.map +1 -0
  5. package/dist/{assert-CKfwrmCV.mjs → assert-DBxo8jPo.mjs} +1 -2
  6. package/dist/{assert-CKfwrmCV.mjs.map → assert-DBxo8jPo.mjs.map} +1 -1
  7. package/dist/{authconnection-D8SJGMpj.mjs → authconnection-D2MhtTN5.mjs} +2 -3
  8. package/dist/{authconnection-D8SJGMpj.mjs.map → authconnection-D2MhtTN5.mjs.map} +1 -1
  9. package/dist/{authconnection-BIYzEh2p.d.mts → authconnection-DvUQAjQS.d.mts} +1 -1
  10. package/dist/{brand-DlnJ375c.mjs → brand-Eo4pLXPJ.mjs} +1 -2
  11. package/dist/{brand-DlnJ375c.mjs.map → brand-Eo4pLXPJ.mjs.map} +1 -1
  12. package/dist/cli/index.mjs +241 -237
  13. package/dist/cli/index.mjs.map +1 -1
  14. package/dist/cli/lib.d.mts +547 -620
  15. package/dist/cli/lib.mjs +9 -11
  16. package/dist/cli/lib.mjs.map +1 -1
  17. package/dist/completion/zsh-worker.zsh +4108 -0
  18. package/dist/configure/index.d.mts +9 -7
  19. package/dist/configure/index.mjs +76 -40
  20. package/dist/configure/index.mjs.map +1 -1
  21. package/dist/{context-s0lxhu8_.mjs → context-Bd266-ru.mjs} +2 -3
  22. package/dist/context-Bd266-ru.mjs.map +1 -0
  23. package/dist/{context-CUBwSBq4.d.mts → context-C2lEi9uw.d.mts} +7 -28
  24. package/dist/{crashreport-D1wKBJ8N.mjs → crashreport-BMWcxeSE.mjs} +1 -2
  25. package/dist/{crashreport-BhD0y14F.mjs → crashreport-DFq-vsU0.mjs} +21 -14
  26. package/dist/{crashreport-BhD0y14F.mjs.map → crashreport-DFq-vsU0.mjs.map} +1 -1
  27. package/dist/{enum-constants-C7DaWeQo.mjs → enum-constants-j9QBF0cB.mjs} +1 -2
  28. package/dist/enum-constants-j9QBF0cB.mjs.map +1 -0
  29. package/dist/{errors-EsY4XO6O.mjs → errors-Dtf2WPaW.mjs} +1 -2
  30. package/dist/{errors-EsY4XO6O.mjs.map → errors-Dtf2WPaW.mjs.map} +1 -1
  31. package/dist/{field-C4zdJLW5.mjs → field-DOsJCPFa.mjs} +1 -2
  32. package/dist/field-DOsJCPFa.mjs.map +1 -0
  33. package/dist/{file-B58Dm-2P.mjs → file-BbdFGdMV.mjs} +3 -12
  34. package/dist/file-BbdFGdMV.mjs.map +1 -0
  35. package/dist/{file-BzK8z3X-.d.mts → file-Dq3NIt_F.d.mts} +3 -42
  36. package/dist/{file-utils-BHPxPXmn.mjs → file-utils-CYZnO1pX.mjs} +6 -7
  37. package/dist/file-utils-CYZnO1pX.mjs.map +1 -0
  38. package/dist/{globals-ByrCoDip.mjs → globals-Cf0sxIt8.mjs} +53 -5
  39. package/dist/globals-Cf0sxIt8.mjs.map +1 -0
  40. package/dist/http-adapter.generated-DFsXDdm5.d.mts +581 -0
  41. package/dist/{iconv-kwrmd1U_.d.mts → iconv-Co-TOPuH.d.mts} +1 -1
  42. package/dist/{iconv-DreIffeM.mjs → iconv-D2vi8G36.mjs} +2 -3
  43. package/dist/{iconv-DreIffeM.mjs.map → iconv-D2vi8G36.mjs.map} +1 -1
  44. package/dist/{idp-Ch95ag8h.mjs → idp-BDbK5gjm.mjs} +2 -3
  45. package/dist/{idp-Ch95ag8h.mjs.map → idp-BDbK5gjm.mjs.map} +1 -1
  46. package/dist/{idp-BlBPtXJ-.d.mts → idp-DrhVrLmV.d.mts} +1 -1
  47. package/dist/{index-CLxubakC.d.mts → index-BI-_j9Z3.d.mts} +49 -261
  48. package/dist/{index-CPRnOjjt.d.mts → index-C4JirJH8.d.mts} +2 -2
  49. package/dist/{index-CQZVJ5SX.d.mts → index-CZfWhr0a.d.mts} +2 -2
  50. package/dist/{index-DRhMpdnA.d.mts → index-Cg8VKAdN.d.mts} +8 -8
  51. package/dist/{index-CfRFkXIO.d.mts → index-DYRjoLXD.d.mts} +2 -2
  52. package/dist/index-lFpcjHPU.d.mts +201 -0
  53. package/dist/{index-DUupuPhZ.d.mts → index-nW7hE6oE.d.mts} +2 -2
  54. package/dist/{interceptor-DOqRkCya.mjs → interceptor-D-q1rvRl.mjs} +1 -2
  55. package/dist/{interceptor-DOqRkCya.mjs.map → interceptor-D-q1rvRl.mjs.map} +1 -1
  56. package/dist/kysely/index.mjs +0 -1
  57. package/dist/kysely/index.mjs.map +1 -1
  58. package/dist/{kysely-type-D1e0Vwkd.mjs → kysely-type-DR8uzZTA.mjs} +2 -3
  59. package/dist/kysely-type-DR8uzZTA.mjs.map +1 -0
  60. package/dist/{logger-DpJyJvNz.mjs → logger-CxF-Ex5d.mjs} +1 -2
  61. package/dist/{logger-DpJyJvNz.mjs.map → logger-CxF-Ex5d.mjs.map} +1 -1
  62. package/dist/{mock-DMgIygjE.mjs → mock-FPxmnt-y.mjs} +9 -56
  63. package/dist/mock-FPxmnt-y.mjs.map +1 -0
  64. package/dist/{multiline-Cf9ODpr1.mjs → multiline-sfHpTZZK.mjs} +1 -2
  65. package/dist/{multiline-Cf9ODpr1.mjs.map → multiline-sfHpTZZK.mjs.map} +1 -1
  66. package/dist/{package-json-DcQApfPQ.mjs → package-json-8b0O9TlX.mjs} +1 -2
  67. package/dist/{package-json-DcQApfPQ.mjs.map → package-json-8b0O9TlX.mjs.map} +1 -1
  68. package/dist/package-json-Cv2Z-TqQ.mjs +3 -0
  69. package/dist/plugin/builtin/enum-constants/index.d.mts +1 -1
  70. package/dist/plugin/builtin/enum-constants/index.mjs +1 -2
  71. package/dist/plugin/builtin/file-utils/index.d.mts +1 -1
  72. package/dist/plugin/builtin/file-utils/index.mjs +1 -2
  73. package/dist/plugin/builtin/kysely-type/index.d.mts +1 -1
  74. package/dist/plugin/builtin/kysely-type/index.mjs +1 -2
  75. package/dist/plugin/builtin/seed/index.d.mts +1 -1
  76. package/dist/plugin/builtin/seed/index.mjs +1 -2
  77. package/dist/plugin/index.d.mts +4 -5
  78. package/dist/plugin/index.mjs +0 -1
  79. package/dist/plugin/index.mjs.map +1 -1
  80. package/dist/registry-DH4m7eYo.mjs +53 -0
  81. package/dist/registry-DH4m7eYo.mjs.map +1 -0
  82. package/dist/{repl-editor-CJG3sz7A.mjs → repl-editor-DmGr9zMw.mjs} +2 -3
  83. package/dist/{repl-editor-CJG3sz7A.mjs.map → repl-editor-DmGr9zMw.mjs.map} +1 -1
  84. package/dist/{chunk-BkoGK1jX.mjs → rolldown-runtime-DXywRVcq.mjs} +0 -1
  85. package/dist/runtime/authconnection.d.mts +1 -1
  86. package/dist/runtime/authconnection.mjs +1 -2
  87. package/dist/runtime/context.d.mts +1 -1
  88. package/dist/runtime/context.mjs +1 -2
  89. package/dist/runtime/file.d.mts +2 -2
  90. package/dist/runtime/file.mjs +2 -3
  91. package/dist/runtime/globals.d.mts +8 -41
  92. package/dist/runtime/globals.mjs +0 -1
  93. package/dist/runtime/iconv.d.mts +1 -1
  94. package/dist/runtime/iconv.mjs +1 -2
  95. package/dist/runtime/idp.d.mts +1 -1
  96. package/dist/runtime/idp.mjs +1 -2
  97. package/dist/runtime/index.d.mts +8 -8
  98. package/dist/runtime/index.mjs +7 -8
  99. package/dist/runtime/secretmanager.d.mts +1 -1
  100. package/dist/runtime/secretmanager.mjs +1 -2
  101. package/dist/runtime/workflow.d.mts +2 -2
  102. package/dist/runtime/workflow.mjs +1 -2
  103. package/dist/{runtime-C7qTBDD2.mjs → runtime-CY4JvrDj.mjs} +1069 -542
  104. package/dist/runtime-CY4JvrDj.mjs.map +1 -0
  105. package/dist/{schema-1msIhXwA.mjs → schema-Dtw9Orye.mjs} +18 -16
  106. package/dist/schema-Dtw9Orye.mjs.map +1 -0
  107. package/dist/{secret-file-CWzF8rry.mjs → secret-file-VSVGy1V0.mjs} +27 -3
  108. package/dist/{secret-file-CWzF8rry.mjs.map → secret-file-VSVGy1V0.mjs.map} +1 -1
  109. package/dist/{secretmanager-CKLB3wAQ.d.mts → secretmanager-B3n4KHfm.d.mts} +1 -1
  110. package/dist/{secretmanager-B9h-U_8U.mjs → secretmanager-BVxw3ih_.mjs} +2 -3
  111. package/dist/{secretmanager-B9h-U_8U.mjs.map → secretmanager-BVxw3ih_.mjs.map} +1 -1
  112. package/dist/seed/index.mjs +0 -1
  113. package/dist/seed/index.mjs.map +1 -1
  114. package/dist/{seed-BH2FbrPV.mjs → seed-izIEyP3z.mjs} +7 -19
  115. package/dist/seed-izIEyP3z.mjs.map +1 -0
  116. package/dist/service-DCqIWibD.mjs +3 -0
  117. package/dist/{service-DMohAx8a2.mjs → service-DU1mVzri2.mjs} +3 -4
  118. package/dist/{service-DMohAx8a2.mjs.map → service-DU1mVzri2.mjs.map} +1 -1
  119. package/dist/{service-wI3Hvrgx.mjs → service-DjyqbCaJ.mjs} +9 -10
  120. package/dist/service-DjyqbCaJ.mjs.map +1 -0
  121. package/dist/{telemetry-BQbbVo2t.mjs → telemetry-CdqJEzkj.mjs} +2 -3
  122. package/dist/{telemetry-BQbbVo2t.mjs.map → telemetry-CdqJEzkj.mjs.map} +1 -1
  123. package/dist/telemetry-ClwW5ohF.mjs +3 -0
  124. package/dist/test-env-key-D7UkZp99.mjs +75 -0
  125. package/dist/test-env-key-D7UkZp99.mjs.map +1 -0
  126. package/dist/type-source-DH_LH20p.mjs +13 -0
  127. package/dist/type-source-DH_LH20p.mjs.map +1 -0
  128. package/dist/types-74etvaxy.mjs +4 -0
  129. package/dist/{plugin-C_FyVSdl.d.mts → types-BDRml5C3.d.mts} +128 -188
  130. package/dist/{types-CmzfQP_m.mjs → types-BQijbo4m.mjs} +10 -11
  131. package/dist/types-BQijbo4m.mjs.map +1 -0
  132. package/dist/types-BX4q6Mo6.d.mts +339 -0
  133. package/dist/types-BZ7QKVE8.d.mts +21 -0
  134. package/dist/{tailordb-BlBGmQK-.d.mts → types-CdcQh4Z2.d.mts} +92 -242
  135. package/dist/utils/test/index.d.mts +6 -14
  136. package/dist/utils/test/index.mjs +4 -14
  137. package/dist/utils/test/index.mjs.map +1 -1
  138. package/dist/vitest/environment.mjs +1 -2
  139. package/dist/vitest/environment.mjs.map +1 -1
  140. package/dist/vitest/index.d.mts +42 -5
  141. package/dist/vitest/index.mjs +133 -4
  142. package/dist/vitest/index.mjs.map +1 -1
  143. package/dist/vitest/setup.mjs +2 -3
  144. package/dist/vitest/setup.mjs.map +1 -1
  145. package/dist/{workflow--aPbA8Uq.mjs → workflow-BOmaZwwG.mjs} +9 -5
  146. package/dist/workflow-BOmaZwwG.mjs.map +1 -0
  147. package/dist/{workflow-CMamswkK.d.mts → workflow-BVy4XWjS.d.mts} +15 -10
  148. package/dist/workflow.generated-ClEjBYhm.d.mts +671 -0
  149. package/docs/cli/application.md +0 -2
  150. package/docs/cli/completion.md +3 -0
  151. package/docs/cli/crashreport.md +0 -2
  152. package/docs/cli/executor.md +53 -0
  153. package/docs/cli/function.md +1 -1
  154. package/docs/cli/setup.md +35 -33
  155. package/docs/cli/user.md +3 -3
  156. package/docs/cli/workflow.md +157 -20
  157. package/docs/cli/workspace.md +3 -3
  158. package/docs/cli-reference.md +26 -20
  159. package/docs/configuration.md +0 -2
  160. package/docs/github-actions.md +29 -16
  161. package/docs/migration/v2.md +475 -0
  162. package/docs/plugin/custom.md +2 -2
  163. package/docs/plugin/index.md +1 -1
  164. package/docs/runtime.md +4 -4
  165. package/docs/services/aigateway.md +97 -0
  166. package/docs/services/auth.md +31 -14
  167. package/docs/services/executor.md +3 -5
  168. package/docs/services/resolver.md +8 -10
  169. package/docs/services/tailordb.md +15 -13
  170. package/docs/services/workflow.md +17 -19
  171. package/docs/testing.md +75 -56
  172. package/package.json +18 -17
  173. package/dist/actor-J2gJ0eK5.d.mts +0 -24
  174. package/dist/application-76hhIhnJ.mjs +0 -5594
  175. package/dist/application-76hhIhnJ.mjs.map +0 -1
  176. package/dist/application-av2raLs6.mjs +0 -4
  177. package/dist/cli/skills.d.mts +0 -1
  178. package/dist/cli/skills.mjs +0 -22
  179. package/dist/cli/skills.mjs.map +0 -1
  180. package/dist/client-C68VWo4g.mjs +0 -4
  181. package/dist/client-CobIRHl-.mjs.map +0 -1
  182. package/dist/context-s0lxhu8_.mjs.map +0 -1
  183. package/dist/enum-constants-C7DaWeQo.mjs.map +0 -1
  184. package/dist/env-B-g-qgE4.d.mts +0 -7
  185. package/dist/field-C4zdJLW5.mjs.map +0 -1
  186. package/dist/file-B58Dm-2P.mjs.map +0 -1
  187. package/dist/file-utils-BHPxPXmn.mjs.map +0 -1
  188. package/dist/globals-ByrCoDip.mjs.map +0 -1
  189. package/dist/job-BpsFXPbi.mjs +0 -54
  190. package/dist/job-BpsFXPbi.mjs.map +0 -1
  191. package/dist/kysely-type-D1e0Vwkd.mjs.map +0 -1
  192. package/dist/mock-DMgIygjE.mjs.map +0 -1
  193. package/dist/package-json-wzO6nV9O.mjs +0 -4
  194. package/dist/registry-D0uB0OrK.mjs +0 -178
  195. package/dist/registry-D0uB0OrK.mjs.map +0 -1
  196. package/dist/runtime-C7qTBDD2.mjs.map +0 -1
  197. package/dist/schema-1msIhXwA.mjs.map +0 -1
  198. package/dist/seed-BH2FbrPV.mjs.map +0 -1
  199. package/dist/service-BHQIerYh.mjs +0 -4
  200. package/dist/service-wI3Hvrgx.mjs.map +0 -1
  201. package/dist/telemetry-w92bvGdC.mjs +0 -4
  202. package/dist/types-2Be3wSMc.mjs +0 -5
  203. package/dist/types-CmzfQP_m.mjs.map +0 -1
  204. package/dist/workflow--aPbA8Uq.mjs.map +0 -1
  205. package/dist/workflow.generated-Bf1tWylx.d.mts +0 -1416
  206. package/docs/generator/builtin.md +0 -257
  207. package/docs/generator/custom.md +0 -147
  208. package/docs/generator/index.md +0 -66
@@ -0,0 +1,339 @@
1
+ import { a as TailorEnv } from "./types-BZ7QKVE8.mjs";
2
+ import { C as FieldMetadata, D as TailorField, F as output, O as TailorFieldType, m as TailorDBInstance, x as DefinedFieldMetadata } from "./types-CdcQh4Z2.mjs";
3
+ import { IsAny, JsonObject, JsonValue } from "type-fest";
4
+
5
+ //#region src/types/auth-connection.generated.d.ts
6
+ type AuthConnectionOAuth2Config = {
7
+ /** OAuth2 provider URL */providerUrl: string; /** OAuth2 issuer URL */
8
+ issuerUrl: string; /** OAuth2 client ID */
9
+ clientId: string; /** OAuth2 client secret */
10
+ clientSecret: string; /** OAuth2 authorization endpoint override */
11
+ authUrl?: string | undefined; /** OAuth2 token endpoint override */
12
+ tokenUrl?: string | undefined;
13
+ };
14
+ type AuthConnectionConfig = {
15
+ type: "oauth2";
16
+ providerUrl: string;
17
+ issuerUrl: string;
18
+ clientId: string;
19
+ clientSecret: string;
20
+ authUrl?: string | undefined;
21
+ tokenUrl?: string | undefined;
22
+ };
23
+ //#endregion
24
+ //#region src/types/auth.generated.d.ts
25
+ type OIDC = {
26
+ /** Identity provider name */name: string;
27
+ kind: "OIDC"; /** OAuth2 client ID */
28
+ clientID: string; /** OAuth2 client secret */
29
+ clientSecret: {
30
+ vaultName: string;
31
+ secretKey: string;
32
+ }; /** OIDC provider URL */
33
+ providerURL: string; /** OIDC issuer URL (defaults to providerURL) */
34
+ issuerURL?: string | undefined; /** JWT claim to use as username */
35
+ usernameClaim?: string | undefined;
36
+ };
37
+ type SAML = {
38
+ /** Identity provider name */name: string;
39
+ kind: "SAML"; /** Enable signing of SAML requests */
40
+ enableSignRequest: boolean; /** URL to fetch SAML metadata (mutually exclusive with rawMetadata) */
41
+ metadataURL?: string | undefined; /** Raw SAML metadata XML (mutually exclusive with metadataURL) */
42
+ rawMetadata?: string | undefined; /** URL to redirect to when SAML ACS receives a response with an empty RelayState. */
43
+ defaultRedirectURL?: string | undefined;
44
+ };
45
+ type IDToken = {
46
+ /** Identity provider name */name: string;
47
+ kind: "IDToken"; /** ID token provider URL */
48
+ providerURL: string; /** Client ID for ID token validation */
49
+ clientID: string; /** ID token issuer URL */
50
+ issuerURL?: string | undefined; /** JWT claim to use as username */
51
+ usernameClaim?: string | undefined;
52
+ };
53
+ type BuiltinIdP = {
54
+ /** Identity provider name */name: string;
55
+ kind: "BuiltInIdP"; /** IdP namespace */
56
+ namespace: string; /** OAuth2 client name in the IdP */
57
+ clientName: string;
58
+ };
59
+ type IdProvider = OIDC | SAML | IDToken | BuiltinIdP;
60
+ type OAuth2ClientInput = {
61
+ /** Allowed redirect URIs */redirectURIs: (`https://${string}` | `http://${string}` | `${string}:url` | `${string}:url/${string}`)[]; /** Client description */
62
+ description?: string | undefined; /** Allowed OAuth2 grant types */
63
+ grantTypes?: ("authorization_code" | "refresh_token")[] | undefined; /** OAuth2 client type */
64
+ clientType?: "confidential" | "public" | "browser" | undefined; /** Access token lifetime in seconds (60-86400) */
65
+ accessTokenLifetimeSeconds?: number | undefined; /** Refresh token lifetime in seconds (60-604800) */
66
+ refreshTokenLifetimeSeconds?: number | undefined; /** Require DPoP (Demonstrating Proof-of-Possession) for token requests */
67
+ requireDpop?: boolean | undefined;
68
+ };
69
+ type OAuth2Client = {
70
+ /** Allowed OAuth2 grant types */grantTypes: ("authorization_code" | "refresh_token")[]; /** Allowed redirect URIs */
71
+ redirectURIs: (`https://${string}` | `http://${string}` | `${string}:url` | `${string}:url/${string}`)[]; /** Access token lifetime in seconds (60-86400) */
72
+ accessTokenLifetimeSeconds: {
73
+ seconds: bigint;
74
+ nanos: number;
75
+ } | undefined; /** Refresh token lifetime in seconds (60-604800) */
76
+ refreshTokenLifetimeSeconds: {
77
+ seconds: bigint;
78
+ nanos: number;
79
+ } | undefined; /** Client description */
80
+ description?: string | undefined; /** OAuth2 client type */
81
+ clientType?: "confidential" | "public" | "browser" | undefined; /** Require DPoP (Demonstrating Proof-of-Possession) for token requests */
82
+ requireDpop?: boolean | undefined;
83
+ };
84
+ type SCIMAuthorization = {
85
+ /** SCIM authorization type */type: "oauth2" | "bearer"; /** Bearer token secret (required for bearer type) */
86
+ bearerSecret?: {
87
+ vaultName: string;
88
+ secretKey: string;
89
+ } | undefined;
90
+ };
91
+ type SCIMAttribute = {
92
+ /** Attribute data type */type: "string" | "number" | "boolean" | "datetime" | "complex"; /** Attribute name */
93
+ name: string; /** Attribute description */
94
+ description?: string | undefined; /** Attribute mutability */
95
+ mutability?: "readOnly" | "readWrite" | "writeOnly" | undefined; /** Whether the attribute is required */
96
+ required?: boolean | undefined; /** Whether the attribute can have multiple values */
97
+ multiValued?: boolean | undefined; /** Uniqueness constraint */
98
+ uniqueness?: "none" | "server" | "global" | undefined; /** List of canonical values */
99
+ canonicalValues?: string[] | null | undefined;
100
+ subAttributes?: SCIMAttribute[] | null | undefined;
101
+ };
102
+ type SCIMAttributeMapping = {
103
+ /** TailorDB field name to map to */tailorDBField: string; /** SCIM attribute path */
104
+ scimPath: string;
105
+ };
106
+ type SCIMResource = {
107
+ /** SCIM resource name */name: string; /** TailorDB namespace for the resource */
108
+ tailorDBNamespace: string; /** TailorDB type name for the resource */
109
+ tailorDBType: string; /** Core SCIM schema definition */
110
+ coreSchema: {
111
+ /** SCIM resource name */name: string;
112
+ attributes: {
113
+ type: "string" | "number" | "boolean" | "datetime" | "complex"; /** SCIM resource name */
114
+ name: string;
115
+ description?: string | undefined;
116
+ mutability?: "readOnly" | "readWrite" | "writeOnly" | undefined;
117
+ required?: boolean | undefined;
118
+ multiValued?: boolean | undefined;
119
+ uniqueness?: "none" | "server" | "global" | undefined;
120
+ canonicalValues?: string[] | null | undefined;
121
+ subAttributes?: any[] | null | undefined;
122
+ }[];
123
+ }; /** Attribute mapping configuration */
124
+ attributeMapping: {
125
+ tailorDBField: string;
126
+ scimPath: string;
127
+ }[];
128
+ };
129
+ type SCIMConfig = {
130
+ /** Machine user name for SCIM operations */machineUserName: string; /** SCIM authorization configuration */
131
+ authorization: {
132
+ type: "oauth2" | "bearer";
133
+ bearerSecret?: {
134
+ vaultName: string;
135
+ secretKey: string;
136
+ } | undefined;
137
+ }; /** SCIM resource definitions */
138
+ resources: {
139
+ name: string;
140
+ tailorDBNamespace: string;
141
+ tailorDBType: string;
142
+ coreSchema: {
143
+ name: string;
144
+ attributes: {
145
+ type: "string" | "number" | "boolean" | "datetime" | "complex";
146
+ name: string;
147
+ description?: string | undefined;
148
+ mutability?: "readOnly" | "readWrite" | "writeOnly" | undefined;
149
+ required?: boolean | undefined;
150
+ multiValued?: boolean | undefined;
151
+ uniqueness?: "none" | "server" | "global" | undefined;
152
+ canonicalValues?: string[] | null | undefined;
153
+ subAttributes?: any[] | null | undefined;
154
+ }[];
155
+ };
156
+ attributeMapping: {
157
+ tailorDBField: string;
158
+ scimPath: string;
159
+ }[];
160
+ }[];
161
+ };
162
+ type TenantProvider = {
163
+ /** TailorDB namespace for the tenant type */namespace: string; /** TailorDB type name for tenants */
164
+ type: string; /** Field used as the tenant signature */
165
+ signatureField: string;
166
+ };
167
+ //#endregion
168
+ //#region src/configure/services/auth/types.d.ts
169
+ type OAuth2ClientGrantType = OAuth2Client["grantTypes"][number];
170
+ type SCIMAttributeType = SCIMAttribute["type"];
171
+ interface MachineUserNameRegistry {}
172
+ /**
173
+ * Machine user name.
174
+ *
175
+ * When `tailor.d.ts` is generated (via `tailor-sdk deploy`/`generate`), this is narrowed
176
+ * to the union of defined machine user names. When no machine users are registered yet,
177
+ * falls back to `string` to avoid blocking editing before the first generate run.
178
+ */
179
+ type MachineUserName = keyof MachineUserNameRegistry extends never ? string : keyof MachineUserNameRegistry & string;
180
+ /** Result of retrieving a connection token at runtime. */
181
+ type AuthConnectionTokenResult = {
182
+ access_token: string;
183
+ refresh_token?: string;
184
+ token_type?: string;
185
+ expiry?: string;
186
+ };
187
+ type ValueOperand = string | boolean | string[] | boolean[];
188
+ type AuthAttributeValue = ValueOperand | null | undefined;
189
+ type UserFieldKeys<User extends TailorDBInstance> = keyof output<User> & string;
190
+ type FieldDefined<User extends TailorDBInstance, Key extends UserFieldKeys<User>> = User["fields"][Key] extends {
191
+ _defined: infer Defined;
192
+ } ? Defined : never;
193
+ type FieldOutput<User extends TailorDBInstance, Key extends UserFieldKeys<User>> = output<User>[Key];
194
+ type FieldIsRequired<User extends TailorDBInstance, Key extends UserFieldKeys<User>> = undefined extends FieldOutput<User, Key> ? false : true;
195
+ type FieldIsOfType<User extends TailorDBInstance, Key extends UserFieldKeys<User>, Type extends string> = FieldDefined<User, Key> extends {
196
+ type: Type;
197
+ } ? true : false;
198
+ type FieldIsArray<User extends TailorDBInstance, Key extends UserFieldKeys<User>> = FieldDefined<User, Key> extends {
199
+ array: true;
200
+ } ? true : false;
201
+ type FieldIsUnique<User extends TailorDBInstance, Key extends UserFieldKeys<User>> = FieldDefined<User, Key> extends {
202
+ unique: true;
203
+ } ? true : false;
204
+ type FieldSupportsValueOperand<User extends TailorDBInstance, Key extends UserFieldKeys<User>> = FieldOutput<User, Key> extends ValueOperand | null | undefined ? true : false;
205
+ type UsernameFieldKey<User extends TailorDBInstance> = IsAny<User> extends true ? string : { [K in UserFieldKeys<User>]: FieldIsRequired<User, K> extends true ? FieldIsOfType<User, K, "string"> extends true ? FieldIsArray<User, K> extends true ? never : FieldIsUnique<User, K> extends true ? K : never : never : never }[UserFieldKeys<User>];
206
+ type UserAttributeKey<User extends TailorDBInstance> = { [K in UserFieldKeys<User>]: K extends "id" ? never : FieldSupportsValueOperand<User, K> extends true ? FieldIsOfType<User, K, "datetime" | "date" | "time"> extends true ? never : K : never }[UserFieldKeys<User>];
207
+ type UserAttributeListKey<User extends TailorDBInstance> = { [K in UserFieldKeys<User>]: K extends "id" ? never : FieldIsOfType<User, K, "uuid"> extends true ? FieldIsArray<User, K> extends true ? never : K : never }[UserFieldKeys<User>];
208
+ type UserAttributeMap<User extends TailorDBInstance> = { [K in UserAttributeKey<User>]?: true };
209
+ type DisallowExtraKeys<T, Allowed extends PropertyKey> = T & { [K in Exclude<keyof T, Allowed>]: never };
210
+ type AttributeListValue<User extends TailorDBInstance, Key extends UserAttributeListKey<User>> = Key extends keyof output<User> ? output<User>[Key] : never;
211
+ type AttributeListToTuple<User extends TailorDBInstance, AttributeList extends readonly UserAttributeListKey<User>[]> = { [Index in keyof AttributeList]: AttributeList[Index] extends UserAttributeListKey<User> ? AttributeListValue<User, AttributeList[Index]> : never };
212
+ type AttributeMapSelectedKeys<User extends TailorDBInstance, AttributeMap extends UserAttributeMap<User>> = Extract<{ [K in keyof AttributeMap]-?: undefined extends AttributeMap[K] ? never : K }[keyof AttributeMap], UserAttributeKey<User>>;
213
+ type UserProfile<User extends TailorDBInstance, AttributeMap extends UserAttributeMap<User>, AttributeList extends UserAttributeListKey<User>[]> = {
214
+ /**
215
+ * TailorDB namespace where the user type is defined.
216
+ *
217
+ * Usually auto-resolved, so you don't need to specify this.
218
+ * Required only when multiple TailorDBs exist and the type is in an external TailorDB.
219
+ */
220
+ namespace?: string;
221
+ type: User;
222
+ usernameField: UsernameFieldKey<User>;
223
+ attributes?: DisallowExtraKeys<AttributeMap, UserAttributeKey<User>>;
224
+ attributeList?: AttributeList;
225
+ };
226
+ type MachineUserAttributeFields = Record<string, TailorField<DefinedFieldMetadata, unknown, FieldMetadata, TailorFieldType>>;
227
+ type TailorFieldOutputValue<Field> = Field extends TailorField<DefinedFieldMetadata, infer Output, FieldMetadata, TailorFieldType> ? Output : never;
228
+ type MachineUserAttributeValues<Fields extends MachineUserAttributeFields> = { [K in keyof Fields]: TailorFieldOutputValue<Fields[K]> extends ValueOperand | null | undefined ? TailorFieldOutputValue<Fields[K]> : never };
229
+ type MachineUserFromAttributes<Fields extends MachineUserAttributeFields> = (keyof Fields extends never ? {
230
+ attributes?: never;
231
+ } : {
232
+ attributes: DisallowExtraKeys<MachineUserAttributeValues<Fields>, keyof Fields>;
233
+ }) & {
234
+ attributeList?: string[];
235
+ };
236
+ type MachineUser<User extends TailorDBInstance, AttributeMap extends UserAttributeMap<User> = UserAttributeMap<User>, AttributeList extends UserAttributeListKey<User>[] = [], MachineUserAttributes extends MachineUserAttributeFields | undefined = undefined> = IsAny<MachineUserAttributes> extends true ? IsAny<User> extends true ? {
237
+ attributes: Record<string, AuthAttributeValue>;
238
+ attributeList?: string[];
239
+ } : (AttributeMapSelectedKeys<User, AttributeMap> extends never ? {
240
+ attributes?: never;
241
+ } : {
242
+ attributes: { [K in AttributeMapSelectedKeys<User, AttributeMap>]: K extends keyof output<User> ? output<User>[K] : never } & { [K in Exclude<keyof output<User>, AttributeMapSelectedKeys<User, AttributeMap>>]?: never };
243
+ }) & ([] extends AttributeList ? {
244
+ attributeList?: never;
245
+ } : {
246
+ attributeList: AttributeListToTuple<User, AttributeList>;
247
+ }) : [MachineUserAttributes] extends [MachineUserAttributeFields] ? MachineUserFromAttributes<MachineUserAttributes> : IsAny<User> extends true ? {
248
+ attributes: Record<string, AuthAttributeValue>;
249
+ attributeList?: string[];
250
+ } : (AttributeMapSelectedKeys<User, AttributeMap> extends never ? {
251
+ attributes?: never;
252
+ } : {
253
+ attributes: { [K in AttributeMapSelectedKeys<User, AttributeMap>]: K extends keyof output<User> ? output<User>[K] : never } & { [K in Exclude<keyof output<User>, AttributeMapSelectedKeys<User, AttributeMap>>]?: never };
254
+ }) & ([] extends AttributeList ? {
255
+ attributeList?: never;
256
+ } : {
257
+ attributeList: AttributeListToTuple<User, AttributeList>;
258
+ });
259
+ /** Upstream OAuth provider that federated a login through the Built-in IdP. */
260
+ type FederatedIdentityProvider = "google" | "microsoft";
261
+ /**
262
+ * Profile claims forwarded from the upstream OAuth provider's ID token.
263
+ *
264
+ * Commonly present claims are typed; any other claim the provider issues is
265
+ * forwarded as-is and reachable through the index signature. Availability
266
+ * varies by provider (e.g. Microsoft does not issue `picture`).
267
+ */
268
+ type FederatedIdentityClaims = {
269
+ name?: string;
270
+ given_name?: string;
271
+ family_name?: string;
272
+ picture?: string;
273
+ locale?: string;
274
+ [claim: string]: JsonValue | undefined;
275
+ };
276
+ /**
277
+ * The upstream identity that federated this login, populated when a user signs
278
+ * in through a Built-in IdP OAuth provider (Google or Microsoft).
279
+ *
280
+ * Available on {@link BeforeLoginClaims.federated_identity}; `undefined` for
281
+ * password logins.
282
+ */
283
+ type FederatedIdentity = {
284
+ provider: FederatedIdentityProvider;
285
+ claims: FederatedIdentityClaims;
286
+ };
287
+ /**
288
+ * Token claims passed to the {@link BeforeLoginHook} handler. Carries the IdP's
289
+ * own claims (e.g. `sub`, `email`) plus, for federated logins, the upstream
290
+ * provider's profile under {@link BeforeLoginClaims.federated_identity}.
291
+ */
292
+ type BeforeLoginClaims = JsonObject & {
293
+ /** Present only for federated (Google/Microsoft) logins; `undefined` for password logins. */federated_identity?: FederatedIdentity;
294
+ };
295
+ type BeforeLoginHookArgs = {
296
+ claims: BeforeLoginClaims;
297
+ idpConfigName: string; /** Environment variables defined in `defineConfig({ env })`. */
298
+ env: TailorEnv;
299
+ };
300
+ type BeforeLoginHook<MachineUserNames extends string> = {
301
+ handler(args: BeforeLoginHookArgs): Promise<void>;
302
+ invoker: NoInfer<MachineUserNames>;
303
+ };
304
+ type AuthHooks<MachineUserNames extends string> = {
305
+ beforeLogin?: BeforeLoginHook<MachineUserNames>;
306
+ };
307
+ type AuthServiceInput<User extends TailorDBInstance, AttributeMap extends UserAttributeMap<User>, AttributeList extends UserAttributeListKey<User>[], MachineUserNames extends string, MachineUserAttributes extends MachineUserAttributeFields | undefined = MachineUserAttributeFields | undefined, ConnectionNames extends string = string> = {
308
+ hooks?: AuthHooks<MachineUserNames>;
309
+ userProfile?: UserProfile<User, AttributeMap, AttributeList>;
310
+ machineUserAttributes?: MachineUserAttributes;
311
+ machineUsers?: Record<MachineUserNames, MachineUser<User, AttributeMap, AttributeList, MachineUserAttributes>>;
312
+ oauth2Clients?: Record<string, OAuth2ClientInput>;
313
+ idProvider?: IdProvider;
314
+ scim?: SCIMConfig;
315
+ tenantProvider?: TenantProvider;
316
+ connections?: Record<ConnectionNames, AuthConnectionConfig>;
317
+ publishSessionEvents?: boolean;
318
+ };
319
+ declare const authDefinitionBrand: unique symbol;
320
+ type AuthDefinitionBrand = {
321
+ readonly [authDefinitionBrand]: true;
322
+ };
323
+ type ConnectionNames<Config> = Config extends {
324
+ connections?: Record<infer K, unknown>;
325
+ } ? K & string : string;
326
+ type DefinedAuth<Name extends string, Config> = Config & {
327
+ name: Name;
328
+ getConnectionToken<C extends ConnectionNames<Config>>(connectionName: C): Promise<AuthConnectionTokenResult>;
329
+ } & AuthDefinitionBrand;
330
+ type AuthExternalConfig = {
331
+ name: string;
332
+ external: true;
333
+ };
334
+ type AuthServiceInputLoose = AuthServiceInput<any, any, any, string, any>;
335
+ type AuthOwnConfig = DefinedAuth<string, AuthServiceInputLoose>;
336
+ type AuthConfig = AuthOwnConfig | AuthExternalConfig;
337
+ //#endregion
338
+ export { SCIMAuthorization as A, IdProvider as C, SAML as D, OIDC as E, AuthConnectionOAuth2Config as F, SCIMResource as M, TenantProvider as N, SCIMAttribute as O, AuthConnectionConfig as P, IDToken as S, OAuth2ClientInput as T, UserAttributeListKey as _, AuthServiceInput as a, ValueOperand as b, DefinedAuth as c, FederatedIdentityProvider as d, MachineUserName as f, UserAttributeKey as g, SCIMAttributeType as h, AuthOwnConfig as i, SCIMConfig as j, SCIMAttributeMapping as k, FederatedIdentity as l, OAuth2ClientGrantType as m, AuthConnectionTokenResult as n, BeforeLoginClaims as o, MachineUserNameRegistry as p, AuthExternalConfig as r, BeforeLoginHookArgs as s, AuthConfig as t, FederatedIdentityClaims as u, UserAttributeMap as v, OAuth2Client as w, BuiltinIdP as x, UsernameFieldKey as y };
339
+ //# sourceMappingURL=types-BX4q6Mo6.d.mts.map
@@ -0,0 +1,21 @@
1
+ //#region src/runtime/types.d.ts
2
+ interface AttributeMap {}
3
+ interface AttributeList {
4
+ __tuple?: [];
5
+ }
6
+ type InferredAttributeMap = keyof AttributeMap extends never ? Record<string, string | string[] | boolean | boolean[] | undefined> : AttributeMap;
7
+ type InferredAttributeList = AttributeList["__tuple"] extends [] ? string[] : AttributeList["__tuple"];
8
+ /** Represents a user or machine user principal in the Tailor Platform. */
9
+ type TailorPrincipal = {
10
+ /** The ID of the principal. */id: string; /** The type of the principal. */
11
+ type: "user" | "machine_user"; /** The ID of the workspace the principal belongs to. */
12
+ workspaceId: string; /** A map of the principal's attributes. */
13
+ attributes: InferredAttributeMap; /** A list of the principal's attribute IDs. */
14
+ attributeList: InferredAttributeList;
15
+ };
16
+ interface Env {}
17
+ /** Represents environment variables in the Tailor platform. */
18
+ type TailorEnv = keyof Env extends never ? Record<string, string | number | boolean> : Env;
19
+ //#endregion
20
+ export { TailorEnv as a, InferredAttributeMap as i, AttributeMap as n, TailorPrincipal as o, Env as r, AttributeList as t };
21
+ //# sourceMappingURL=types-BZ7QKVE8.d.mts.map