import * as z from "zod/v4-mini";
import { ClosedEnum } from "../../types/enums.js";
import { SubType } from "./subtype.js";
export declare const TokenEndpointAuthMethod: {
    readonly ClientSecretBasic: "client_secret_basic";
    readonly ClientSecretPost: "client_secret_post";
    readonly None: "none";
};
export type TokenEndpointAuthMethod = ClosedEnum<typeof TokenEndpointAuthMethod>;
export declare const GrantTypes: {
    readonly AuthorizationCode: "authorization_code";
    readonly RefreshToken: "refresh_token";
};
export type GrantTypes = ClosedEnum<typeof GrantTypes>;
export type OAuth2ClientConfiguration = {
    redirectUris: Array<string>;
    tokenEndpointAuthMethod?: TokenEndpointAuthMethod | undefined;
    grantTypes?: Array<GrantTypes> | undefined;
    responseTypes?: Array<string> | undefined;
    scope?: string | undefined;
    clientName: string;
    clientUri?: string | null | undefined;
    logoUri?: string | null | undefined;
    tosUri?: string | null | undefined;
    policyUri?: string | null | undefined;
    defaultSubType?: SubType | undefined;
};
/** @internal */
export declare const TokenEndpointAuthMethod$outboundSchema: z.ZodMiniEnum<typeof TokenEndpointAuthMethod>;
/** @internal */
export declare const GrantTypes$outboundSchema: z.ZodMiniEnum<typeof GrantTypes>;
/** @internal */
export type OAuth2ClientConfiguration$Outbound = {
    redirect_uris: Array<string>;
    token_endpoint_auth_method: string;
    grant_types?: Array<string> | undefined;
    response_types?: Array<string> | undefined;
    scope: string;
    client_name: string;
    client_uri?: string | null | undefined;
    logo_uri?: string | null | undefined;
    tos_uri?: string | null | undefined;
    policy_uri?: string | null | undefined;
    default_sub_type?: string | undefined;
};
/** @internal */
export declare const OAuth2ClientConfiguration$outboundSchema: z.ZodMiniType<OAuth2ClientConfiguration$Outbound, OAuth2ClientConfiguration>;
export declare function oAuth2ClientConfigurationToJSON(oAuth2ClientConfiguration: OAuth2ClientConfiguration): string;
//# sourceMappingURL=oauth2clientconfiguration.d.ts.map