/**
 * This file was auto-generated by openapi-typescript.
 * Do not make direct changes to the file.
 */
export interface paths {
    "/tenants/{tenantId}": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        /**
         * Retrieve a tenant by tenant ID.
         * @description Retrieve a tenant by tenant ID.
         */
        get: operations["retrieveTenant"];
        /**
         * Create or update a tenant. Use the request body to provide identification and contact information for the tenant and its associated merchant.
         * @description This API is used to create or update a tenant. The tenant ID is the unique identifier for the tenant and is used in all subsequent API calls. The tenant ID must be unique across all tenants in the system.
         */
        put: operations["registerTenant"];
        post?: never;
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/tenants/{tenantId}/clients": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        /**
         * Retrieve/Get all tenant clients.
         * @description Retrieve a list of SLAS clients associated with the tenant_id.
         */
        get: operations["retrieveClients"];
        put?: never;
        post?: never;
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/tenants/{tenantId}/clients/{clientId}": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        /**
         * Retrieve a client.
         * @description Retrieve a client by client ID. The client ID is the unique identifier for the client and is used in all subsequent API calls. The client ID must be unique across all tenants in the system.
         */
        get: operations["retrieveClient"];
        /**
         * Create or update a client.
         * @description It is strongly advised to refrain from using the “sfcc-shopper-context.rw” scope with a PUBLIC Client because it offers fewer protections and could potentially enable malicious actors to access Shopper Context enabled promotions. It is highly recommended to use “sfcc-shopper-context.rw” scope with a private client.
         */
        put: operations["registerClient"];
        post?: never;
        /**
         * Delete a client.
         * @description Delete a client by client ID.
         */
        delete: operations["deleteClient"];
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/tenants/{tenantId}/clients/{clientId}/password-action-templates": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        /**
         * Retrieve/get a password action template.
         * @description Retrieve a password action template by client ID.
         */
        get: operations["retrievePwdlessTemplate"];
        /**
         * Create or update a password action template.
         * @description Create or update a password action template by client ID.
         */
        put: operations["registerPwdlessTemplate"];
        post?: never;
        /**
         * Delete a password action template.
         * @description Delete a password action template.
         */
        delete: operations["deletePwdlessTemplate"];
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/tenants/{tenantId}/idps": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        /**
         * Retrieve/Get all tenant identity providers.
         * @description Retrieve a list of SLAS identity providers associated with the tenant_id.
         */
        get: operations["retrieveIdentityProviders"];
        put?: never;
        post?: never;
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/tenants/{tenantId}/idps/{name}": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        /**
         * Retrieve/Get a specific identity provider.
         * @description Retrieve a specific identity provider by name.
         */
        get: operations["retrieveIdentityProvider"];
        /**
         * Create or update an identity provider.
         * @description Create or update an identity provider by name.
         */
        put: operations["registerIdentityProvider"];
        post?: never;
        /**
         * Delete an identity provider.
         * @description Delete an identity provider by name.
         */
        delete: operations["deleteIdentityProvider"];
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/tenants/{tenantId}/customers/{customerId}": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        get?: never;
        put?: never;
        post?: never;
        /**
         * Delete all shopper records associated with a shopper's customer ID. The email ID is used if it's passed as a query parameter. This conforms to the GDPR regulations.
         * @description Delete all shopper records associated with a shopper's customer ID. The email ID is used if it's passed as a query parameter. This conforms to the GDPR regulations.
         */
        delete: operations["deleteShopper"];
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
}
export type webhooks = Record<string, never>;
export interface components {
    schemas: {
        /** @description Tenant */
        Tenant: {
            /** @example aaaa_prd */
            tenantId: string;
            /** @example 1 */
            merchantId: number;
            /** @example SLAS Merchant Name */
            description: string;
            /** @example SLAS Tenant Contact */
            contact: string;
            /** @example tenant_contact@slas.tst */
            emailAddress: string;
            /** @example 000-000-0000 */
            phoneNo: string;
            /** @example false */
            isDeleted: boolean;
            /** @example CLEAR */
            status: string;
            /**
             * @description This read only value relates to the B2C Comerce realm of the customer.
             *       - XS = Bronze and Bronze+
             *       - S = Silver and Silver+
             *       - M = Gold and Gold+
             *       - L = Platinum and Platinum+
             * @example L
             * @enum {string}
             */
            tier: "XS" | "S" | "M" | "L";
            /**
             * @description This read only value shows the the number of requests that can be made per minute.
             * @example 8000
             */
            requestQuotaPerMinute: number;
        } & {
            [key: string]: unknown;
        };
        ErrorResponse: {
            /**
             * @description A short, human-readable summary of the problem
             *     type.  It will not change from occurrence to occurrence of the
             *     problem, except for purposes of localization
             * @example You do not have enough credit
             */
            title: string;
            /**
             * @description A URI reference [RFC3986] that identifies the
             *     problem type.  This specification encourages that, when
             *     dereferenced, it provide human-readable documentation for the
             *     problem type (e.g., using HTML [W3C.REC-html5-20141028]).  When
             *     this member is not present, its value is assumed to be
             *     "about:blank". It accepts relative URIs; this means
             *     that they must be resolved relative to the document's base URI, as
             *     per [RFC3986], Section 5.
             * @example NotEnoughMoney
             */
            type: string;
            /**
             * @description A human-readable explanation specific to this occurrence of the problem.
             * @example Your current balance is 30, but that costs 50
             */
            detail: string;
            /**
             * @description A URI reference that identifies the specific
             *     occurrence of the problem.  It may or may not yield further
             *     information if dereferenced.  It accepts relative URIs; this means
             *     that they must be resolved relative to the document's base URI, as
             *     per [RFC3986], Section 5.
             * @example /account/12345/msgs/abc
             */
            instance?: string;
        } & {
            [key: string]: unknown;
        };
        /** @description Create or update tenants */
        TenantDto: {
            /** @example aaaa_prd */
            tenantId: string;
            /**
             * @description Name of the merchant.
             * @example Merchant Name
             */
            merchantName: string;
            /** @example Additional information about the tenant. */
            description: string;
            /** @example Name of the merchant's designated contact. */
            contact: string;
            /**
             * @description Email address of the designated contact.
             * @example joe.shopper@foo.org
             */
            emailAddress: string;
            /**
             * @description Phone number of the designated contact.
             * @example +1 000-000-0000
             */
            phoneNo: string;
        };
        Client: {
            /**
             * @description Client ID
             * @example fd0d4ab9-bb85-4c04-bebd-589bd74bdd75
             */
            clientId: string;
            /**
             * @description Client Name
             * @example Client Name
             */
            name: string;
            /**
             * @description Client Secret. The secret will only display on create and if the secret was updated when updating the client.
             * @example client-secret
             */
            secret: string;
            /**
             * @description Merchant scopes. These scopes allows different permissions in SLAS and B2C commerce.
             *     Shopper Custom Objects additionally provides a way to do granular scoping besides the standard `sfcc.shopper-custom-objects` like `sfcc.shopper-custom-objects.xyz`
             *     SLAS is capable of handling a maximum of 20 Custom Object scopes.
             *
             *     For B2C Commerce scope details, see the [Authorization Scopes Catalog](https://developer.salesforce.com/docs/commerce/commerce-api/guide/auth-z-scope-catalog.html)."
             * @example [
             *       "sfcc.products",
             *       "sfcc.catalogs",
             *       "sfcc.customers:ro"
             *     ]
             */
            scopes: string[];
            /**
             * @description An absolute URL, beginning with a protocol
             * @example https://www.salesforce.com
             */
            redirectUri: string;
            /**
             * @description An absolute URL, beginning with a protocol
             * @example https://www.salesforce.com
             */
            callbackUri: string;
            /**
             * @description Client Channels
             * @example [
             *       "RefArch",
             *       "SiteGenensis"
             *     ]
             */
            channels: string[];
            /**
             * @description Private or Public Client
             * @example true
             */
            isPrivateClient?: boolean;
            /**
             * @description When enabling (true) this will restrict all calls to the `\login` endpoint for the Client Id. When calling the `\login` endpoint and `loginEpRestrict` is enabled a HTTP Status code of 403 will be returned.
             * @example false
             */
            loginEpRestrict?: boolean;
        };
        ClientListResponse: {
            /** @description An array of clients. */
            data: components["schemas"]["Client"][];
        };
        /** @description Used to create and update a SLAS Client */
        ClientRequest: {
            /**
             * @description Client Name
             * @example High Adventure Wear
             */
            name: string;
            /**
             * @description SLAS client id. Must match the query parameter.
             * @example fd0d4ab9-bb85-4c04-bebd-589bd74bdd75
             */
            clientId: string;
            /**
             * @description SLAS client secret. On create if left blank then a secret will be generated.
             * @example client_secret
             */
            secret: string;
            /**
             * @description Merchant scopes. These scopes allows different permissions in SLAS and B2C commerce.
             *     Shopper Custom Objects additionally provides a way to do granular scoping besides the standard `sfcc.shopper-custom-objects` like `sfcc.shopper-custom-objects.xyz`
             *     SLAS is capable of handling a maximum of 20 Custom Object scopes."
             * @example [
             *       "sfcc.products",
             *       "sfcc.catalogs",
             *       "sfcc.customers:ro"
             *     ]
             */
            scopes: string[];
            /**
             * @description Array of SLAS redirect URLs. Include protocol and domain name in each URL. Wildcards supported.
             * @example [
             *       "http://localhost:3000/callback",
             *       "https://*.example.com/callback"
             *     ]
             */
            redirectUri: string[];
            /**
             * @description Array of SLAS callback URLs that will be used for passworless login and password reset when mode=callback. Include protocol and domain name in each URL. Wildcards are NOT supported.
             * @example [
             *       "http://localhost:3000/password-reset-callback",
             *       "http://localhost:3000/passwordless-login-callback"
             *     ]
             */
            callbackUri?: string[];
            /**
             * @description Client Channels
             * @example [
             *       "RefArch",
             *       "SiteGenensis"
             *     ]
             */
            channels: string[];
            /**
             * @description Private or Public Client. If left blank the client will default to private.
             * @example true
             */
            isPrivateClient: boolean;
            /**
             * @description When enabling (true) this will restrict all calls to the `\login` endpoint for the Client Id. When calling the `\login` endpoint and `loginEpRestrict` is enabled a HTTP Status code of 403 will be returned.
             * @example false
             */
            loginEpRestrict?: boolean;
        };
        /**
         * @description Describes the type of action that the password action template will be used for.
         *     Here are the actions that each enumerated string refers to:
         *       - `PWDLESS_LOGIN`: Passwordless login
         *       - `PWD_RESET_ACTION`: Password reset
         *       - `PWD_FORGOT_ACTION`: Forgot password
         * @example PWDLESS_LOGIN
         * @enum {string}
         */
        PasswordTemplateActionType: "PWDLESS_LOGIN" | "PWD_RESET_ACTION" | "PWD_FORGOT_ACTION";
        /**
         * @description Identifies the type of mode that the password action template will be used for.
         * @example EMAIL
         * @enum {string}
         */
        PasswordTemplateType: "SMS" | "EMAIL";
        PasswordActionTemplate: {
            /** @example SiteGenesis */
            channelId: string;
            /** @example Password Action Email Template */
            name: string;
            /** @example Password Action Token Request */
            subject: string;
            /** @example This is your password action token: ${token} */
            link: string;
            /**
             * @description Identifies the locale of the template. Must be one of the [language tag strings supported by JDK 11](https://www.oracle.com/java/technologies/javase/jdk11-suported-locales.html). The string is stored in all lowercase.
             * @example en-us
             */
            locale: string;
            actionType: components["schemas"]["PasswordTemplateActionType"];
            templateType: components["schemas"]["PasswordTemplateType"];
            /**
             * @example Passwordless Login Token Request
             *     You're receiving this because you requested a passwordless login token for your account. ${link}
             */
            template: string;
        };
        /** @description Identity provider Response */
        IdentityProviderResponse: {
            /**
             * @description Identity Provider Name
             * @example google
             */
            name: string;
            /**
             * @description IDP authorization URL
             * @example https://www.salesforce.com/authorize
             */
            authUrl: string;
            /**
             * @description IDP token URL
             * @example https://www.salesforce.com/token
             */
            tokenUrl: string;
            /**
             * @description IDP token info URL
             * @example https://www.salesforce.com/inspect
             */
            tokenInfoUrl: string;
            /**
             * @description IDP user info URL
             * @example https://www.salesforce.com/userinfo
             */
            userInfoUrl: string;
            /**
             * @description Redirect URL to go to after IDP flow is complete. This URL must be registered with the IDP.
             * @example https://www.salesforce.com/idp/callback
             */
            redirectUrl: string;
            /**
             * @description IDP to get OIDC configuration.
             * @example https://www.salesforce.com/.well-known/openid-configuration
             */
            wellKnownUrl?: string;
            /**
             * @description Client Id of the third party IDP.
             * @example 934277749308-02dg4398n3s31ofge8cot46jirn3kpkf.apps.googleusercontent.com
             */
            clientId: string;
            /**
             * @description Client Secret of the third party IDP. For Apple copy the contents from the .p8 file that was downloaded from Apple between -*----BEGIN PRIVATE KEY-----* and -*---END PRIVATE KEY-----* markers.
             * @example aKZM1xEnZopNP2bm2gc3GKex
             */
            clientSecret: string;
            /**
             * @description Indicates if the IDP configuration is the Preferred SLAS IDP for the Tenant Id.
             * @example true
             */
            isPreferred: boolean;
            /**
             * @description Default is to place the client credentials in a basic authorization header for the call to the IDP. If true, the client credentials are placed in the POST body to the IDP.
             * @example false
             */
            isClientCredsBody: boolean;
            /**
             * @description Scopes needed by the IDP.
             * @example [
             *       "oidc",
             *       "email",
             *       "profile"
             *     ]
             */
            scopes: string[];
            /**
             * @description Apple Team ID. Used primarily for Sign with Apple in generating the client secret.
             * @example appleTeamId
             */
            teamId?: string;
            /**
             * @description Apple key ID. This is the Key ID that was obtained from Apple when the the private key for client authentication was created. Used primarily for Sign with Apple in generating the client secret.
             * @example appleKeyId
             */
            keyId?: string;
            /**
             * @description List of user info claims that can be used as identifiers to look up and merge with an existing B2C Commerce profile for a registered shopper or an existing B2C Commerce profile created via federated login with an external Identity Provider with the same merge claim as this one. If multiple matching B2C Commerce shopper (customer) profiles are found, the external profile is merged with the most recently created shopper (customer) profile. Refer to the Merge Shopper Profiles user guide for more details.
             *
             *     Note: When configuring an Apple IDP, 'email' and 'sub' are the only supported merge claims.
             * @example [
             *       "email",
             *       "phone"
             *     ]
             */
            loginMergeClaims?: string[];
            /**
             * @description Mapping from the identity provider’s token claims for SLAS to get user information values when the user successfully authenticates. The values in this array should be setup using the following `key=value` pair pattern. The key part is the SLAS key with the value part being the OIDC claim key.
             * @example [
             *       "accessToken=access_token",
             *       "refreshToken=refresh_token",
             *       "accessTokenTTL=expires_in",
             *       "idToken=id_token",
             *       "subject=sub",
             *       "email=email",
             *       "userId=sub",
             *       "familyName=family_name",
             *       "givenName=given_name",
             *       "name=name"
             *     ]
             */
            oidcClaimMapper?: string[];
        };
        IdpListResponse: {
            /** @description An array of identity providers. */
            data: components["schemas"]["IdentityProviderResponse"][];
        };
        /** @description Identity provider */
        IdentityProvider: {
            /**
             * @description Identity Provider Name
             * @example google
             * @enum {string}
             */
            name: "adfs" | "apple" | "auth0" | "azure" | "cognito" | "facebook" | "forgerock" | "gigya" | "gigya_social" | "google" | "okta" | "ping" | "salesforce";
            /**
             * @description IDP authorize URL
             * @example https://www.salesforce.com/authorize
             */
            authUrl: string;
            /**
             * @description IDP token URL
             * @example https://www.salesforce.com/token
             */
            tokenUrl: string;
            /**
             * @description IDP token info URL
             * @example https://www.salesforce.com/introspect
             */
            tokenInfoUrl: string;
            /**
             * @description IDP user info URL
             * @example https://www.salesforce.com/userinfo
             */
            userInfoUrl: string;
            /**
             * @description Redirect URL to go to after IDP flow is complete. This URL must be registered with the IDP.
             * @example https://www.salesforce.com/idp/callback
             */
            redirectUrl: string;
            /**
             * @description IDP URL to get OIDC configuration.
             * @example https://www.salesforce.com/.well-known/openid-configuration
             */
            wellKnownUrl: string;
            /**
             * @description Client Id of the third party IDP.
             * @example 934277749308-02dg4398n3s31ofge8cot46jirn3kpkf.apps.googleusercontent.com
             */
            clientId: string;
            /**
             * @description Client Secret of the third party IDP. For Apple copy the contents from the .p8 file that was downloaded from Apple between -*----BEGIN PRIVATE KEY-----* and -*---END PRIVATE KEY-----* markers.
             * @example aKZM1xEnZopNP2bm2gc3GKex
             */
            clientSecret: string;
            /**
             * @description Set the IDP configuration as the Preferred SLAS IDP. Default value is `false`.
             * @example true
             */
            preferenceValue?: boolean;
            /**
             * @description Default is to place the client credentials in a basic authorization header for the call to the IDP. If true, the client credentials are placed in the POST body to the IDP.
             * @example false
             */
            isClientCredsBody: boolean;
            /**
             * @description If set to `true`, SLAS uses the `wellKnowUrl` value to populate the `authUrl`, `tokenUrl`, `userInfoUrl`, and `scopes` values from the identity provider. Default value is `false`.
             * @example false
             */
            useWellKnown?: boolean;
            /**
             * @description IDP Scopes
             * @example [
             *       "oidc",
             *       "email",
             *       "profile"
             *     ]
             */
            scopes: string[];
            /**
             * @description Apple Team Id. Used primarily for Sign with Apple in generating the client secret.
             * @example appleTeamId
             */
            teamId?: string;
            /**
             * @description Apple key id. This is the Key ID that was obtained from Apple when the the private key for client authentication was created. Used primarily for Sign with Apple in generating the client secret.
             * @example appleKeyId
             */
            keyId?: string;
            /**
             * @description List of user info claims that can be used as identifiers to look up and merge with an existing B2C Commerce profile for a registered shopper or an existing B2C Commerce profile created via federated login with an external Identity Provider with the same merge claim as this one. If multiple matching B2C Commerce shopper (customer) profiles are found, the external profile is merged with the most recently created shopper (customer) profile. Refer to the Merge Shopper Profiles user guide for more details.
             *     Note: When configuring an Apple IDP, 'email' and 'sub' are the only supported merge claims.
             * @example [
             *       "email",
             *       "phone"
             *     ]
             */
            loginMergeClaims?: string[];
            /**
             * @description Mapping from the identity provider’s token claims for SLAS to get user information values when the user successfully authenticates. The values in this array should be setup using the following `key=value` pair pattern. The key part is the SLAS key with the value part being the OIDC claim key.
             * @example [
             *       "accessToken=access_token",
             *       "refreshToken=refresh_token",
             *       "accessTokenTTL=expires_in",
             *       "idToken=id_token",
             *       "subject=sub",
             *       "email=email",
             *       "userId=sub",
             *       "familyName=family_name",
             *       "givenName=given_name",
             *       "name=name"
             *     ]
             */
            oidcClaimMapper?: string[];
        };
    };
    responses: never;
    parameters: {
        tenantId: string;
        clientId: string;
        channelId: string;
        actionType: "PWDLESS_LOGIN" | "PWD_RESET_ACTION" | "PWD_FORGOT_ACTION";
        templateType: "EMAIL" | "SMS";
        locale: string;
        name: string;
        customerId: string;
        /** @description The shoppers email address. */
        emailAddress: string;
    };
    requestBodies: never;
    headers: never;
    pathItems: never;
}
export type $defs = Record<string, never>;
export interface operations {
    retrieveTenant: {
        parameters: {
            query?: never;
            header?: never;
            path: {
                tenantId: components["parameters"]["tenantId"];
            };
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description The tenant was retrieved successfully. */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["Tenant"];
                };
            };
            /** @description Bad request */
            400: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Unauthorized. Wrong tenant */
            401: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Not found */
            404: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
        };
    };
    registerTenant: {
        parameters: {
            query?: never;
            header?: never;
            path: {
                tenantId: components["parameters"]["tenantId"];
            };
            cookie?: never;
        };
        requestBody: {
            content: {
                "application/json": components["schemas"]["TenantDto"];
            };
        };
        responses: {
            /** @description The tenant was updated successfully. */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["Tenant"];
                };
            };
            /** @description The tenant was created successfully. */
            201: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["Tenant"];
                };
            };
            /** @description Bad request */
            400: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Unauthorized. Wrong tenant */
            401: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Not found */
            404: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Conflict */
            409: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
        };
    };
    retrieveClients: {
        parameters: {
            query?: never;
            header?: never;
            path: {
                tenantId: components["parameters"]["tenantId"];
            };
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description All tenant clients retrieved successfully. */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ClientListResponse"];
                };
            };
            /** @description Unauthorized. Wrong tenant */
            401: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Not found */
            404: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
        };
    };
    retrieveClient: {
        parameters: {
            query?: never;
            header?: never;
            path: {
                clientId: components["parameters"]["clientId"];
                tenantId: components["parameters"]["tenantId"];
            };
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description The client was retrieved successfully. */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["Client"];
                };
            };
            /** @description Bad request */
            400: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Unauthorized. Wrong tenant */
            401: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Not found */
            404: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
        };
    };
    registerClient: {
        parameters: {
            query?: never;
            header?: never;
            path: {
                clientId: components["parameters"]["clientId"];
                tenantId: components["parameters"]["tenantId"];
            };
            cookie?: never;
        };
        requestBody: {
            content: {
                "application/json": components["schemas"]["ClientRequest"];
            };
        };
        responses: {
            /** @description The client was updated successfully. A secret is only returned when a secret was sent with the update request. */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["Client"];
                };
            };
            /** @description The client was created successfully. This is the only time the secret is returned. */
            201: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["Client"];
                };
            };
            /** @description Bad request */
            400: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Unauthorized. Wrong tenant */
            401: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Not found */
            404: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Conflict */
            409: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
        };
    };
    deleteClient: {
        parameters: {
            query?: never;
            header?: never;
            path: {
                clientId: components["parameters"]["clientId"];
                tenantId: components["parameters"]["tenantId"];
            };
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description No content */
            204: {
                headers: {
                    [name: string]: unknown;
                };
                content?: never;
            };
            /** @description Bad request */
            400: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Unauthorized. Wrong tenant */
            401: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Not found */
            404: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
        };
    };
    retrievePwdlessTemplate: {
        parameters: {
            query: {
                channelId: components["parameters"]["channelId"];
                actionType: components["parameters"]["actionType"];
                templateType: components["parameters"]["templateType"];
            };
            header?: never;
            path: {
                clientId: components["parameters"]["clientId"];
                tenantId: components["parameters"]["tenantId"];
            };
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description The password action template was retrieved successfully. */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["PasswordActionTemplate"];
                };
            };
            /** @description Bad request */
            400: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Unauthorized. Wrong tenant */
            401: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Not found */
            404: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
        };
    };
    registerPwdlessTemplate: {
        parameters: {
            query?: never;
            header?: never;
            path: {
                clientId: components["parameters"]["clientId"];
                tenantId: components["parameters"]["tenantId"];
            };
            cookie?: never;
        };
        requestBody: {
            content: {
                "application/json": components["schemas"]["PasswordActionTemplate"];
            };
        };
        responses: {
            /** @description The password action template was updated successfully. */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["PasswordActionTemplate"];
                };
            };
            /** @description A password action template was created successfully. */
            201: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["PasswordActionTemplate"];
                };
            };
            /** @description Bad request */
            400: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Unauthorized. Wrong tenant */
            401: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Not found */
            404: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
        };
    };
    deletePwdlessTemplate: {
        parameters: {
            query: {
                channelId: components["parameters"]["channelId"];
                actionType: components["parameters"]["actionType"];
                templateType: components["parameters"]["templateType"];
                locale: components["parameters"]["locale"];
            };
            header?: never;
            path: {
                clientId: components["parameters"]["clientId"];
                tenantId: components["parameters"]["tenantId"];
            };
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description No content */
            204: {
                headers: {
                    [name: string]: unknown;
                };
                content?: never;
            };
            /** @description Bad request */
            400: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Unauthorized. Wrong tenant */
            401: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Not found */
            404: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
        };
    };
    retrieveIdentityProviders: {
        parameters: {
            query?: never;
            header?: never;
            path: {
                tenantId: components["parameters"]["tenantId"];
            };
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description All tenant identity providers retrieved successfully. */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["IdpListResponse"];
                };
            };
            /** @description Bad request */
            400: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Unauthorized. Wrong tenant */
            401: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Not found */
            404: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
        };
    };
    retrieveIdentityProvider: {
        parameters: {
            query?: never;
            header?: never;
            path: {
                name: components["parameters"]["name"];
                tenantId: components["parameters"]["tenantId"];
            };
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description The identity provider was retrieved successfully. */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["IdentityProvider"];
                };
            };
            /** @description Bad request */
            400: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Unauthorized. Wrong tenant */
            401: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Not found */
            404: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
        };
    };
    registerIdentityProvider: {
        parameters: {
            query?: never;
            header?: never;
            path: {
                name: components["parameters"]["name"];
                tenantId: components["parameters"]["tenantId"];
            };
            cookie?: never;
        };
        requestBody: {
            content: {
                "application/json": components["schemas"]["IdentityProvider"];
            };
        };
        responses: {
            /** @description The identity provider was updated successfully. */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["IdentityProviderResponse"];
                };
            };
            /** @description The identity provider was created successfully. */
            201: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["IdentityProviderResponse"];
                };
            };
            /** @description Bad request */
            400: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Unauthorized. Wrong tenant */
            401: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Not found */
            404: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Conflict. Duplicate */
            409: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
        };
    };
    deleteIdentityProvider: {
        parameters: {
            query?: never;
            header?: never;
            path: {
                name: components["parameters"]["name"];
                tenantId: components["parameters"]["tenantId"];
            };
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description No content */
            204: {
                headers: {
                    [name: string]: unknown;
                };
                content?: never;
            };
            /** @description Bad request */
            400: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Unauthorized. Wrong tenant */
            401: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Not found */
            404: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
        };
    };
    deleteShopper: {
        parameters: {
            query?: {
                /** @description The shoppers email address. */
                emailAddress?: components["parameters"]["emailAddress"];
            };
            header?: never;
            path: {
                customerId: components["parameters"]["customerId"];
                tenantId: components["parameters"]["tenantId"];
            };
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description No content */
            204: {
                headers: {
                    [name: string]: unknown;
                };
                content?: never;
            };
            /** @description Bad request */
            400: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
            /** @description Not found */
            404: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ErrorResponse"];
                };
            };
        };
    };
}
