@mstuercke/pulumi-modules 1.2.3 → 1.3.0

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 (45) hide show
  1. package/dist/clerk/Clerk.d.ts +27 -0
  2. package/dist/clerk/Clerk.js +88 -0
  3. package/dist/clerk/index.d.ts +5 -0
  4. package/dist/clerk/index.js +5 -0
  5. package/dist/domain/getDomain.js +7 -2
  6. package/dist/index.d.ts +4 -0
  7. package/dist/index.js +3 -0
  8. package/package.json +24 -6
  9. package/sdks/clerk/.gitattributes +1 -0
  10. package/sdks/clerk/README.md +3 -0
  11. package/sdks/clerk/allowlistIdentifier.ts +121 -0
  12. package/sdks/clerk/apiKey.ts +254 -0
  13. package/sdks/clerk/application.ts +182 -0
  14. package/sdks/clerk/applicationSettings.ts +171 -0
  15. package/sdks/clerk/blocklistIdentifier.ts +114 -0
  16. package/sdks/clerk/config/index.ts +5 -0
  17. package/sdks/clerk/config/vars.ts +34 -0
  18. package/sdks/clerk/domain.ts +154 -0
  19. package/sdks/clerk/getApplication.ts +42 -0
  20. package/sdks/clerk/index.ts +213 -0
  21. package/sdks/clerk/instanceConfig.ts +128 -0
  22. package/sdks/clerk/instanceDomain.ts +129 -0
  23. package/sdks/clerk/jwtTemplate.ts +190 -0
  24. package/sdks/clerk/machine.ts +127 -0
  25. package/sdks/clerk/oauthApplication.ts +228 -0
  26. package/sdks/clerk/organization.ts +190 -0
  27. package/sdks/clerk/organizationDomain.ts +166 -0
  28. package/sdks/clerk/organizationMembership.ts +148 -0
  29. package/sdks/clerk/organizationPermission.ts +142 -0
  30. package/sdks/clerk/organizationRole.ts +156 -0
  31. package/sdks/clerk/package.json +26 -0
  32. package/sdks/clerk/provider.ts +76 -0
  33. package/sdks/clerk/redirectUrl.ts +104 -0
  34. package/sdks/clerk/roleSet.ts +197 -0
  35. package/sdks/clerk/samlConnection.ts +361 -0
  36. package/sdks/clerk/scripts/postinstall.js +20 -0
  37. package/sdks/clerk/svixWebhook.ts +77 -0
  38. package/sdks/clerk/tsconfig.json +53 -0
  39. package/sdks/clerk/types/index.ts +13 -0
  40. package/sdks/clerk/types/input.ts +59 -0
  41. package/sdks/clerk/types/output.ts +79 -0
  42. package/sdks/clerk/user.ts +458 -0
  43. package/sdks/clerk/utilities.ts +107 -0
  44. package/dist/mongodb/MongoDB.d.ts +0 -18
  45. package/dist/mongodb/MongoDB.js +0 -77
@@ -0,0 +1,42 @@
1
+ // *** WARNING: this file was generated by pulumi-language-nodejs. ***
2
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
3
+
4
+ import * as pulumi from "@pulumi/pulumi";
5
+ import * as inputs from "./types/input";
6
+ import * as outputs from "./types/output";
7
+ import * as utilities from "./utilities";
8
+
9
+ export function getApplication(args: GetApplicationArgs, opts?: pulumi.InvokeOptions): Promise<GetApplicationResult> {
10
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
11
+ return pulumi.runtime.invoke("clerk:index/getApplication:getApplication", {
12
+ "id": args.id,
13
+ }, opts, utilities.getPackage());
14
+ }
15
+
16
+ /**
17
+ * A collection of arguments for invoking getApplication.
18
+ */
19
+ export interface GetApplicationArgs {
20
+ id: string;
21
+ }
22
+
23
+ /**
24
+ * A collection of values returned by getApplication.
25
+ */
26
+ export interface GetApplicationResult {
27
+ readonly id: string;
28
+ readonly instances: outputs.GetApplicationInstance[];
29
+ }
30
+ export function getApplicationOutput(args: GetApplicationOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetApplicationResult> {
31
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
32
+ return pulumi.runtime.invokeOutput("clerk:index/getApplication:getApplication", {
33
+ "id": args.id,
34
+ }, opts, utilities.getPackage());
35
+ }
36
+
37
+ /**
38
+ * A collection of arguments for invoking getApplication.
39
+ */
40
+ export interface GetApplicationOutputArgs {
41
+ id: pulumi.Input<string>;
42
+ }
@@ -0,0 +1,213 @@
1
+ // *** WARNING: this file was generated by pulumi-language-nodejs. ***
2
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
3
+
4
+ import * as pulumi from "@pulumi/pulumi";
5
+ import * as utilities from "./utilities";
6
+
7
+ // Export members:
8
+ export { AllowlistIdentifierArgs, AllowlistIdentifierState } from "./allowlistIdentifier";
9
+ export type AllowlistIdentifier = import("./allowlistIdentifier").AllowlistIdentifier;
10
+ export const AllowlistIdentifier: typeof import("./allowlistIdentifier").AllowlistIdentifier = null as any;
11
+ utilities.lazyLoad(exports, ["AllowlistIdentifier"], () => require("./allowlistIdentifier"));
12
+
13
+ export { ApiKeyArgs, ApiKeyState } from "./apiKey";
14
+ export type ApiKey = import("./apiKey").ApiKey;
15
+ export const ApiKey: typeof import("./apiKey").ApiKey = null as any;
16
+ utilities.lazyLoad(exports, ["ApiKey"], () => require("./apiKey"));
17
+
18
+ export { ApplicationArgs, ApplicationState } from "./application";
19
+ export type Application = import("./application").Application;
20
+ export const Application: typeof import("./application").Application = null as any;
21
+ utilities.lazyLoad(exports, ["Application"], () => require("./application"));
22
+
23
+ export { ApplicationSettingsArgs, ApplicationSettingsState } from "./applicationSettings";
24
+ export type ApplicationSettings = import("./applicationSettings").ApplicationSettings;
25
+ export const ApplicationSettings: typeof import("./applicationSettings").ApplicationSettings = null as any;
26
+ utilities.lazyLoad(exports, ["ApplicationSettings"], () => require("./applicationSettings"));
27
+
28
+ export { BlocklistIdentifierArgs, BlocklistIdentifierState } from "./blocklistIdentifier";
29
+ export type BlocklistIdentifier = import("./blocklistIdentifier").BlocklistIdentifier;
30
+ export const BlocklistIdentifier: typeof import("./blocklistIdentifier").BlocklistIdentifier = null as any;
31
+ utilities.lazyLoad(exports, ["BlocklistIdentifier"], () => require("./blocklistIdentifier"));
32
+
33
+ export { DomainArgs, DomainState } from "./domain";
34
+ export type Domain = import("./domain").Domain;
35
+ export const Domain: typeof import("./domain").Domain = null as any;
36
+ utilities.lazyLoad(exports, ["Domain"], () => require("./domain"));
37
+
38
+ export { GetApplicationArgs, GetApplicationResult, GetApplicationOutputArgs } from "./getApplication";
39
+ export const getApplication: typeof import("./getApplication").getApplication = null as any;
40
+ export const getApplicationOutput: typeof import("./getApplication").getApplicationOutput = null as any;
41
+ utilities.lazyLoad(exports, ["getApplication","getApplicationOutput"], () => require("./getApplication"));
42
+
43
+ export { InstanceConfigArgs, InstanceConfigState } from "./instanceConfig";
44
+ export type InstanceConfig = import("./instanceConfig").InstanceConfig;
45
+ export const InstanceConfig: typeof import("./instanceConfig").InstanceConfig = null as any;
46
+ utilities.lazyLoad(exports, ["InstanceConfig"], () => require("./instanceConfig"));
47
+
48
+ export { InstanceDomainArgs, InstanceDomainState } from "./instanceDomain";
49
+ export type InstanceDomain = import("./instanceDomain").InstanceDomain;
50
+ export const InstanceDomain: typeof import("./instanceDomain").InstanceDomain = null as any;
51
+ utilities.lazyLoad(exports, ["InstanceDomain"], () => require("./instanceDomain"));
52
+
53
+ export { JwtTemplateArgs, JwtTemplateState } from "./jwtTemplate";
54
+ export type JwtTemplate = import("./jwtTemplate").JwtTemplate;
55
+ export const JwtTemplate: typeof import("./jwtTemplate").JwtTemplate = null as any;
56
+ utilities.lazyLoad(exports, ["JwtTemplate"], () => require("./jwtTemplate"));
57
+
58
+ export { MachineArgs, MachineState } from "./machine";
59
+ export type Machine = import("./machine").Machine;
60
+ export const Machine: typeof import("./machine").Machine = null as any;
61
+ utilities.lazyLoad(exports, ["Machine"], () => require("./machine"));
62
+
63
+ export { OauthApplicationArgs, OauthApplicationState } from "./oauthApplication";
64
+ export type OauthApplication = import("./oauthApplication").OauthApplication;
65
+ export const OauthApplication: typeof import("./oauthApplication").OauthApplication = null as any;
66
+ utilities.lazyLoad(exports, ["OauthApplication"], () => require("./oauthApplication"));
67
+
68
+ export { OrganizationArgs, OrganizationState } from "./organization";
69
+ export type Organization = import("./organization").Organization;
70
+ export const Organization: typeof import("./organization").Organization = null as any;
71
+ utilities.lazyLoad(exports, ["Organization"], () => require("./organization"));
72
+
73
+ export { OrganizationDomainArgs, OrganizationDomainState } from "./organizationDomain";
74
+ export type OrganizationDomain = import("./organizationDomain").OrganizationDomain;
75
+ export const OrganizationDomain: typeof import("./organizationDomain").OrganizationDomain = null as any;
76
+ utilities.lazyLoad(exports, ["OrganizationDomain"], () => require("./organizationDomain"));
77
+
78
+ export { OrganizationMembershipArgs, OrganizationMembershipState } from "./organizationMembership";
79
+ export type OrganizationMembership = import("./organizationMembership").OrganizationMembership;
80
+ export const OrganizationMembership: typeof import("./organizationMembership").OrganizationMembership = null as any;
81
+ utilities.lazyLoad(exports, ["OrganizationMembership"], () => require("./organizationMembership"));
82
+
83
+ export { OrganizationPermissionArgs, OrganizationPermissionState } from "./organizationPermission";
84
+ export type OrganizationPermission = import("./organizationPermission").OrganizationPermission;
85
+ export const OrganizationPermission: typeof import("./organizationPermission").OrganizationPermission = null as any;
86
+ utilities.lazyLoad(exports, ["OrganizationPermission"], () => require("./organizationPermission"));
87
+
88
+ export { OrganizationRoleArgs, OrganizationRoleState } from "./organizationRole";
89
+ export type OrganizationRole = import("./organizationRole").OrganizationRole;
90
+ export const OrganizationRole: typeof import("./organizationRole").OrganizationRole = null as any;
91
+ utilities.lazyLoad(exports, ["OrganizationRole"], () => require("./organizationRole"));
92
+
93
+ export { ProviderArgs } from "./provider";
94
+ export type Provider = import("./provider").Provider;
95
+ export const Provider: typeof import("./provider").Provider = null as any;
96
+ utilities.lazyLoad(exports, ["Provider"], () => require("./provider"));
97
+
98
+ export { RedirectUrlArgs, RedirectUrlState } from "./redirectUrl";
99
+ export type RedirectUrl = import("./redirectUrl").RedirectUrl;
100
+ export const RedirectUrl: typeof import("./redirectUrl").RedirectUrl = null as any;
101
+ utilities.lazyLoad(exports, ["RedirectUrl"], () => require("./redirectUrl"));
102
+
103
+ export { RoleSetArgs, RoleSetState } from "./roleSet";
104
+ export type RoleSet = import("./roleSet").RoleSet;
105
+ export const RoleSet: typeof import("./roleSet").RoleSet = null as any;
106
+ utilities.lazyLoad(exports, ["RoleSet"], () => require("./roleSet"));
107
+
108
+ export { SamlConnectionArgs, SamlConnectionState } from "./samlConnection";
109
+ export type SamlConnection = import("./samlConnection").SamlConnection;
110
+ export const SamlConnection: typeof import("./samlConnection").SamlConnection = null as any;
111
+ utilities.lazyLoad(exports, ["SamlConnection"], () => require("./samlConnection"));
112
+
113
+ export { SvixWebhookArgs, SvixWebhookState } from "./svixWebhook";
114
+ export type SvixWebhook = import("./svixWebhook").SvixWebhook;
115
+ export const SvixWebhook: typeof import("./svixWebhook").SvixWebhook = null as any;
116
+ utilities.lazyLoad(exports, ["SvixWebhook"], () => require("./svixWebhook"));
117
+
118
+ export { UserArgs, UserState } from "./user";
119
+ export type User = import("./user").User;
120
+ export const User: typeof import("./user").User = null as any;
121
+ utilities.lazyLoad(exports, ["User"], () => require("./user"));
122
+
123
+
124
+ // Export sub-modules:
125
+ import * as config from "./config";
126
+ import * as types from "./types";
127
+
128
+ export {
129
+ config,
130
+ types,
131
+ };
132
+
133
+ const _module = {
134
+ version: utilities.getVersion(),
135
+ construct: (name: string, type: string, urn: string): pulumi.Resource => {
136
+ switch (type) {
137
+ case "clerk:index/allowlistIdentifier:AllowlistIdentifier":
138
+ return new AllowlistIdentifier(name, <any>undefined, { urn })
139
+ case "clerk:index/apiKey:ApiKey":
140
+ return new ApiKey(name, <any>undefined, { urn })
141
+ case "clerk:index/application:Application":
142
+ return new Application(name, <any>undefined, { urn })
143
+ case "clerk:index/applicationSettings:ApplicationSettings":
144
+ return new ApplicationSettings(name, <any>undefined, { urn })
145
+ case "clerk:index/blocklistIdentifier:BlocklistIdentifier":
146
+ return new BlocklistIdentifier(name, <any>undefined, { urn })
147
+ case "clerk:index/domain:Domain":
148
+ return new Domain(name, <any>undefined, { urn })
149
+ case "clerk:index/instanceConfig:InstanceConfig":
150
+ return new InstanceConfig(name, <any>undefined, { urn })
151
+ case "clerk:index/instanceDomain:InstanceDomain":
152
+ return new InstanceDomain(name, <any>undefined, { urn })
153
+ case "clerk:index/jwtTemplate:JwtTemplate":
154
+ return new JwtTemplate(name, <any>undefined, { urn })
155
+ case "clerk:index/machine:Machine":
156
+ return new Machine(name, <any>undefined, { urn })
157
+ case "clerk:index/oauthApplication:OauthApplication":
158
+ return new OauthApplication(name, <any>undefined, { urn })
159
+ case "clerk:index/organization:Organization":
160
+ return new Organization(name, <any>undefined, { urn })
161
+ case "clerk:index/organizationDomain:OrganizationDomain":
162
+ return new OrganizationDomain(name, <any>undefined, { urn })
163
+ case "clerk:index/organizationMembership:OrganizationMembership":
164
+ return new OrganizationMembership(name, <any>undefined, { urn })
165
+ case "clerk:index/organizationPermission:OrganizationPermission":
166
+ return new OrganizationPermission(name, <any>undefined, { urn })
167
+ case "clerk:index/organizationRole:OrganizationRole":
168
+ return new OrganizationRole(name, <any>undefined, { urn })
169
+ case "clerk:index/redirectUrl:RedirectUrl":
170
+ return new RedirectUrl(name, <any>undefined, { urn })
171
+ case "clerk:index/roleSet:RoleSet":
172
+ return new RoleSet(name, <any>undefined, { urn })
173
+ case "clerk:index/samlConnection:SamlConnection":
174
+ return new SamlConnection(name, <any>undefined, { urn })
175
+ case "clerk:index/svixWebhook:SvixWebhook":
176
+ return new SvixWebhook(name, <any>undefined, { urn })
177
+ case "clerk:index/user:User":
178
+ return new User(name, <any>undefined, { urn })
179
+ default:
180
+ throw new Error(`unknown resource type ${type}`);
181
+ }
182
+ },
183
+ };
184
+ pulumi.runtime.registerResourceModule("clerk", "index/allowlistIdentifier", _module)
185
+ pulumi.runtime.registerResourceModule("clerk", "index/apiKey", _module)
186
+ pulumi.runtime.registerResourceModule("clerk", "index/application", _module)
187
+ pulumi.runtime.registerResourceModule("clerk", "index/applicationSettings", _module)
188
+ pulumi.runtime.registerResourceModule("clerk", "index/blocklistIdentifier", _module)
189
+ pulumi.runtime.registerResourceModule("clerk", "index/domain", _module)
190
+ pulumi.runtime.registerResourceModule("clerk", "index/instanceConfig", _module)
191
+ pulumi.runtime.registerResourceModule("clerk", "index/instanceDomain", _module)
192
+ pulumi.runtime.registerResourceModule("clerk", "index/jwtTemplate", _module)
193
+ pulumi.runtime.registerResourceModule("clerk", "index/machine", _module)
194
+ pulumi.runtime.registerResourceModule("clerk", "index/oauthApplication", _module)
195
+ pulumi.runtime.registerResourceModule("clerk", "index/organization", _module)
196
+ pulumi.runtime.registerResourceModule("clerk", "index/organizationDomain", _module)
197
+ pulumi.runtime.registerResourceModule("clerk", "index/organizationMembership", _module)
198
+ pulumi.runtime.registerResourceModule("clerk", "index/organizationPermission", _module)
199
+ pulumi.runtime.registerResourceModule("clerk", "index/organizationRole", _module)
200
+ pulumi.runtime.registerResourceModule("clerk", "index/redirectUrl", _module)
201
+ pulumi.runtime.registerResourceModule("clerk", "index/roleSet", _module)
202
+ pulumi.runtime.registerResourceModule("clerk", "index/samlConnection", _module)
203
+ pulumi.runtime.registerResourceModule("clerk", "index/svixWebhook", _module)
204
+ pulumi.runtime.registerResourceModule("clerk", "index/user", _module)
205
+ pulumi.runtime.registerResourcePackage("clerk", {
206
+ version: utilities.getVersion(),
207
+ constructProvider: (name: string, type: string, urn: string): pulumi.ProviderResource => {
208
+ if (type !== "pulumi:providers:clerk") {
209
+ throw new Error(`unknown provider type ${type}`);
210
+ }
211
+ return new Provider(name, <any>undefined, { urn });
212
+ },
213
+ });
@@ -0,0 +1,128 @@
1
+ // *** WARNING: this file was generated by pulumi-language-nodejs. ***
2
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
3
+
4
+ import * as pulumi from "@pulumi/pulumi";
5
+ import * as utilities from "./utilities";
6
+
7
+ export class InstanceConfig extends pulumi.CustomResource {
8
+ /**
9
+ * Get an existing InstanceConfig resource's state with the given name, ID, and optional extra
10
+ * properties used to qualify the lookup.
11
+ *
12
+ * @param name The _unique_ name of the resulting resource.
13
+ * @param id The _unique_ provider ID of the resource to lookup.
14
+ * @param state Any extra arguments used during the lookup.
15
+ * @param opts Optional settings to control the behavior of the CustomResource.
16
+ */
17
+ public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceConfigState, opts?: pulumi.CustomResourceOptions): InstanceConfig {
18
+ return new InstanceConfig(name, <any>state, { ...opts, id: id });
19
+ }
20
+
21
+ /** @internal */
22
+ public static readonly __pulumiType = 'clerk:index/instanceConfig:InstanceConfig';
23
+
24
+ /**
25
+ * Returns true if the given object is an instance of InstanceConfig. This is designed to work even
26
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
27
+ */
28
+ public static isInstance(obj: any): obj is InstanceConfig {
29
+ if (obj === undefined || obj === null) {
30
+ return false;
31
+ }
32
+ return obj['__pulumiType'] === InstanceConfig.__pulumiType;
33
+ }
34
+
35
+ /**
36
+ * The ID of the Clerk application.
37
+ */
38
+ declare public readonly applicationId: pulumi.Output<string>;
39
+ /**
40
+ * JSON string containing instance configuration key-value pairs. Use jsonencode() to construct this value.
41
+ */
42
+ declare public readonly config: pulumi.Output<string>;
43
+ /**
44
+ * The current version of the instance configuration, used for optimistic concurrency control.
45
+ */
46
+ declare public /*out*/ readonly configVersion: pulumi.Output<string>;
47
+ /**
48
+ * The ID of the Clerk instance.
49
+ */
50
+ declare public readonly instanceId: pulumi.Output<string>;
51
+
52
+ /**
53
+ * Create a InstanceConfig resource with the given unique name, arguments, and options.
54
+ *
55
+ * @param name The _unique_ name of the resource.
56
+ * @param args The arguments to use to populate this resource's properties.
57
+ * @param opts A bag of options that control this resource's behavior.
58
+ */
59
+ constructor(name: string, args: InstanceConfigArgs, opts?: pulumi.CustomResourceOptions)
60
+ constructor(name: string, argsOrState?: InstanceConfigArgs | InstanceConfigState, opts?: pulumi.CustomResourceOptions) {
61
+ let resourceInputs: pulumi.Inputs = {};
62
+ opts = opts || {};
63
+ if (opts.id) {
64
+ const state = argsOrState as InstanceConfigState | undefined;
65
+ resourceInputs["applicationId"] = state?.applicationId;
66
+ resourceInputs["config"] = state?.config;
67
+ resourceInputs["configVersion"] = state?.configVersion;
68
+ resourceInputs["instanceId"] = state?.instanceId;
69
+ } else {
70
+ const args = argsOrState as InstanceConfigArgs | undefined;
71
+ if (args?.applicationId === undefined && !opts.urn) {
72
+ throw new Error("Missing required property 'applicationId'");
73
+ }
74
+ if (args?.config === undefined && !opts.urn) {
75
+ throw new Error("Missing required property 'config'");
76
+ }
77
+ if (args?.instanceId === undefined && !opts.urn) {
78
+ throw new Error("Missing required property 'instanceId'");
79
+ }
80
+ resourceInputs["applicationId"] = args?.applicationId;
81
+ resourceInputs["config"] = args?.config;
82
+ resourceInputs["instanceId"] = args?.instanceId;
83
+ resourceInputs["configVersion"] = undefined /*out*/;
84
+ }
85
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
86
+ super(InstanceConfig.__pulumiType, name, resourceInputs, opts, false /*dependency*/, utilities.getPackage());
87
+ }
88
+ }
89
+
90
+ /**
91
+ * Input properties used for looking up and filtering InstanceConfig resources.
92
+ */
93
+ export interface InstanceConfigState {
94
+ /**
95
+ * The ID of the Clerk application.
96
+ */
97
+ applicationId?: pulumi.Input<string | undefined>;
98
+ /**
99
+ * JSON string containing instance configuration key-value pairs. Use jsonencode() to construct this value.
100
+ */
101
+ config?: pulumi.Input<string | undefined>;
102
+ /**
103
+ * The current version of the instance configuration, used for optimistic concurrency control.
104
+ */
105
+ configVersion?: pulumi.Input<string | undefined>;
106
+ /**
107
+ * The ID of the Clerk instance.
108
+ */
109
+ instanceId?: pulumi.Input<string | undefined>;
110
+ }
111
+
112
+ /**
113
+ * The set of arguments for constructing a InstanceConfig resource.
114
+ */
115
+ export interface InstanceConfigArgs {
116
+ /**
117
+ * The ID of the Clerk application.
118
+ */
119
+ applicationId: pulumi.Input<string>;
120
+ /**
121
+ * JSON string containing instance configuration key-value pairs. Use jsonencode() to construct this value.
122
+ */
123
+ config: pulumi.Input<string>;
124
+ /**
125
+ * The ID of the Clerk instance.
126
+ */
127
+ instanceId: pulumi.Input<string>;
128
+ }
@@ -0,0 +1,129 @@
1
+ // *** WARNING: this file was generated by pulumi-language-nodejs. ***
2
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
3
+
4
+ import * as pulumi from "@pulumi/pulumi";
5
+ import * as utilities from "./utilities";
6
+
7
+ export class InstanceDomain extends pulumi.CustomResource {
8
+ /**
9
+ * Get an existing InstanceDomain resource's state with the given name, ID, and optional extra
10
+ * properties used to qualify the lookup.
11
+ *
12
+ * @param name The _unique_ name of the resulting resource.
13
+ * @param id The _unique_ provider ID of the resource to lookup.
14
+ * @param state Any extra arguments used during the lookup.
15
+ * @param opts Optional settings to control the behavior of the CustomResource.
16
+ */
17
+ public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceDomainState, opts?: pulumi.CustomResourceOptions): InstanceDomain {
18
+ return new InstanceDomain(name, <any>state, { ...opts, id: id });
19
+ }
20
+
21
+ /** @internal */
22
+ public static readonly __pulumiType = 'clerk:index/instanceDomain:InstanceDomain';
23
+
24
+ /**
25
+ * Returns true if the given object is an instance of InstanceDomain. This is designed to work even
26
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
27
+ */
28
+ public static isInstance(obj: any): obj is InstanceDomain {
29
+ if (obj === undefined || obj === null) {
30
+ return false;
31
+ }
32
+ return obj['__pulumiType'] === InstanceDomain.__pulumiType;
33
+ }
34
+
35
+ /**
36
+ * The accounts portal URL for this domain.
37
+ */
38
+ declare public /*out*/ readonly accountsPortalUrl: pulumi.Output<string>;
39
+ /**
40
+ * The frontend API URL for this domain.
41
+ */
42
+ declare public /*out*/ readonly frontendApiUrl: pulumi.Output<string>;
43
+ /**
44
+ * Whether this is a satellite domain. Create-only; changing forces replacement.
45
+ */
46
+ declare public readonly isSatellite: pulumi.Output<boolean>;
47
+ /**
48
+ * The domain name (e.g. app.example.com).
49
+ */
50
+ declare public readonly name: pulumi.Output<string>;
51
+ /**
52
+ * The proxy URL for the domain.
53
+ */
54
+ declare public readonly proxyUrl: pulumi.Output<string>;
55
+
56
+ /**
57
+ * Create a InstanceDomain resource with the given unique name, arguments, and options.
58
+ *
59
+ * @param name The _unique_ name of the resource.
60
+ * @param args The arguments to use to populate this resource's properties.
61
+ * @param opts A bag of options that control this resource's behavior.
62
+ */
63
+ constructor(name: string, args?: InstanceDomainArgs, opts?: pulumi.CustomResourceOptions)
64
+ constructor(name: string, argsOrState?: InstanceDomainArgs | InstanceDomainState, opts?: pulumi.CustomResourceOptions) {
65
+ let resourceInputs: pulumi.Inputs = {};
66
+ opts = opts || {};
67
+ if (opts.id) {
68
+ const state = argsOrState as InstanceDomainState | undefined;
69
+ resourceInputs["accountsPortalUrl"] = state?.accountsPortalUrl;
70
+ resourceInputs["frontendApiUrl"] = state?.frontendApiUrl;
71
+ resourceInputs["isSatellite"] = state?.isSatellite;
72
+ resourceInputs["name"] = state?.name;
73
+ resourceInputs["proxyUrl"] = state?.proxyUrl;
74
+ } else {
75
+ const args = argsOrState as InstanceDomainArgs | undefined;
76
+ resourceInputs["isSatellite"] = args?.isSatellite;
77
+ resourceInputs["name"] = args?.name;
78
+ resourceInputs["proxyUrl"] = args?.proxyUrl;
79
+ resourceInputs["accountsPortalUrl"] = undefined /*out*/;
80
+ resourceInputs["frontendApiUrl"] = undefined /*out*/;
81
+ }
82
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
83
+ super(InstanceDomain.__pulumiType, name, resourceInputs, opts, false /*dependency*/, utilities.getPackage());
84
+ }
85
+ }
86
+
87
+ /**
88
+ * Input properties used for looking up and filtering InstanceDomain resources.
89
+ */
90
+ export interface InstanceDomainState {
91
+ /**
92
+ * The accounts portal URL for this domain.
93
+ */
94
+ accountsPortalUrl?: pulumi.Input<string | undefined>;
95
+ /**
96
+ * The frontend API URL for this domain.
97
+ */
98
+ frontendApiUrl?: pulumi.Input<string | undefined>;
99
+ /**
100
+ * Whether this is a satellite domain. Create-only; changing forces replacement.
101
+ */
102
+ isSatellite?: pulumi.Input<boolean | undefined>;
103
+ /**
104
+ * The domain name (e.g. app.example.com).
105
+ */
106
+ name?: pulumi.Input<string | undefined>;
107
+ /**
108
+ * The proxy URL for the domain.
109
+ */
110
+ proxyUrl?: pulumi.Input<string | undefined>;
111
+ }
112
+
113
+ /**
114
+ * The set of arguments for constructing a InstanceDomain resource.
115
+ */
116
+ export interface InstanceDomainArgs {
117
+ /**
118
+ * Whether this is a satellite domain. Create-only; changing forces replacement.
119
+ */
120
+ isSatellite?: pulumi.Input<boolean | undefined>;
121
+ /**
122
+ * The domain name (e.g. app.example.com).
123
+ */
124
+ name?: pulumi.Input<string | undefined>;
125
+ /**
126
+ * The proxy URL for the domain.
127
+ */
128
+ proxyUrl?: pulumi.Input<string | undefined>;
129
+ }