@leancodepl/kratos
Version:
Headless React components library for building Ory Kratos authentication flows
293 lines (292 loc) • 14.3 kB
TypeScript
/**
* Ory APIs
* # Introduction Documentation for all public and administrative Ory APIs. Administrative APIs can only be accessed with a valid Personal Access Token. Public APIs are mostly used in browsers. ## SDKs This document describes the APIs available in the Ory Network. The APIs are available as SDKs for the following languages: | Language | Download SDK | Documentation | | -------------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------ | | Dart | [pub.dev](https://pub.dev/packages/ory_client) | [README](https://github.com/ory/sdk/blob/master/clients/client/dart/README.md) | | .NET | [nuget.org](https://www.nuget.org/packages/Ory.Client/) | [README](https://github.com/ory/sdk/blob/master/clients/client/dotnet/README.md) | | Elixir | [hex.pm](https://hex.pm/packages/ory_client) | [README](https://github.com/ory/sdk/blob/master/clients/client/elixir/README.md) | | Go | [github.com](https://github.com/ory/client-go) | [README](https://github.com/ory/sdk/blob/master/clients/client/go/README.md) | | Java | [maven.org](https://search.maven.org/artifact/sh.ory/ory-client) | [README](https://github.com/ory/sdk/blob/master/clients/client/java/README.md) | | JavaScript | [npmjs.com](https://www.npmjs.com/package/@ory/client) | [README](https://github.com/ory/sdk/blob/master/clients/client/typescript/README.md) | | JavaScript (With fetch) | [npmjs.com](https://www.npmjs.com/package/@ory/client-fetch) | [README](https://github.com/ory/sdk/blob/master/clients/client/typescript-fetch/README.md) | | PHP | [packagist.org](https://packagist.org/packages/ory/client) | [README](https://github.com/ory/sdk/blob/master/clients/client/php/README.md) | | Python | [pypi.org](https://pypi.org/project/ory-client/) | [README](https://github.com/ory/sdk/blob/master/clients/client/python/README.md) | | Ruby | [rubygems.org](https://rubygems.org/gems/ory-client) | [README](https://github.com/ory/sdk/blob/master/clients/client/ruby/README.md) | | Rust | [crates.io](https://crates.io/crates/ory-client) | [README](https://github.com/ory/sdk/blob/master/clients/client/rust/README.md) |
*
* The version of the OpenAPI document: v1.20.10
* Contact: support@ory.sh
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import type { CredentialSupportedDraft00 } from './CredentialSupportedDraft00';
/**
* Includes links to several endpoints (for example `/oauth2/token`) and exposes information on supported signature algorithms
* among others.
* @export
* @interface OidcConfiguration
*/
export interface OidcConfiguration {
/**
* OAuth 2.0 Authorization Endpoint URL
* @type {string}
* @memberof OidcConfiguration
*/
authorization_endpoint: string;
/**
* OpenID Connect Back-Channel Logout Session Required
*
* Boolean value specifying whether the OP can pass a sid (session ID) Claim in the Logout Token to identify the RP
* session with the OP. If supported, the sid Claim is also included in ID Tokens issued by the OP
* @type {boolean}
* @memberof OidcConfiguration
*/
backchannel_logout_session_supported?: boolean;
/**
* OpenID Connect Back-Channel Logout Supported
*
* Boolean value specifying whether the OP supports back-channel logout, with true indicating support.
* @type {boolean}
* @memberof OidcConfiguration
*/
backchannel_logout_supported?: boolean;
/**
* OpenID Connect Claims Parameter Parameter Supported
*
* Boolean value specifying whether the OP supports use of the claims parameter, with true indicating support.
* @type {boolean}
* @memberof OidcConfiguration
*/
claims_parameter_supported?: boolean;
/**
* OpenID Connect Supported Claims
*
* JSON array containing a list of the Claim Names of the Claims that the OpenID Provider MAY be able to supply
* values for. Note that for privacy or other reasons, this might not be an exhaustive list.
* @type {Array<string>}
* @memberof OidcConfiguration
*/
claims_supported?: Array<string>;
/**
* OAuth 2.0 PKCE Supported Code Challenge Methods
*
* JSON array containing a list of Proof Key for Code Exchange (PKCE) [RFC7636] code challenge methods supported
* by this authorization server.
* @type {Array<string>}
* @memberof OidcConfiguration
*/
code_challenge_methods_supported?: Array<string>;
/**
* OpenID Connect Verifiable Credentials Endpoint
*
* Contains the URL of the Verifiable Credentials Endpoint.
* @type {string}
* @memberof OidcConfiguration
*/
credentials_endpoint_draft_00?: string;
/**
* OpenID Connect Verifiable Credentials Supported
*
* JSON array containing a list of the Verifiable Credentials supported by this authorization server.
* @type {Array<CredentialSupportedDraft00>}
* @memberof OidcConfiguration
*/
credentials_supported_draft_00?: Array<CredentialSupportedDraft00>;
/**
* OpenID Connect End-Session Endpoint
*
* URL at the OP to which an RP can perform a redirect to request that the End-User be logged out at the OP.
* @type {string}
* @memberof OidcConfiguration
*/
end_session_endpoint?: string;
/**
* OpenID Connect Front-Channel Logout Session Required
*
* Boolean value specifying whether the OP can pass iss (issuer) and sid (session ID) query parameters to identify
* the RP session with the OP when the frontchannel_logout_uri is used. If supported, the sid Claim is also
* included in ID Tokens issued by the OP.
* @type {boolean}
* @memberof OidcConfiguration
*/
frontchannel_logout_session_supported?: boolean;
/**
* OpenID Connect Front-Channel Logout Supported
*
* Boolean value specifying whether the OP supports HTTP-based logout, with true indicating support.
* @type {boolean}
* @memberof OidcConfiguration
*/
frontchannel_logout_supported?: boolean;
/**
* OAuth 2.0 Supported Grant Types
*
* JSON array containing a list of the OAuth 2.0 Grant Type values that this OP supports.
* @type {Array<string>}
* @memberof OidcConfiguration
*/
grant_types_supported?: Array<string>;
/**
* OpenID Connect Default ID Token Signing Algorithms
*
* Algorithm used to sign OpenID Connect ID Tokens.
* @type {Array<string>}
* @memberof OidcConfiguration
*/
id_token_signed_response_alg: Array<string>;
/**
* OpenID Connect Supported ID Token Signing Algorithms
*
* JSON array containing a list of the JWS signing algorithms (alg values) supported by the OP for the ID Token
* to encode the Claims in a JWT.
* @type {Array<string>}
* @memberof OidcConfiguration
*/
id_token_signing_alg_values_supported: Array<string>;
/**
* OpenID Connect Issuer URL
*
* An URL using the https scheme with no query or fragment component that the OP asserts as its IssuerURL Identifier.
* If IssuerURL discovery is supported , this value MUST be identical to the issuer value returned
* by WebFinger. This also MUST be identical to the iss Claim value in ID Tokens issued from this IssuerURL.
* @type {string}
* @memberof OidcConfiguration
*/
issuer: string;
/**
* OpenID Connect Well-Known JSON Web Keys URL
*
* URL of the OP's JSON Web Key Set [JWK] document. This contains the signing key(s) the RP uses to validate
* signatures from the OP. The JWK Set MAY also contain the Server's encryption key(s), which are used by RPs
* to encrypt requests to the Server. When both signing and encryption keys are made available, a use (Key Use)
* parameter value is REQUIRED for all keys in the referenced JWK Set to indicate each key's intended usage.
* Although some algorithms allow the same key to be used for both signatures and encryption, doing so is
* NOT RECOMMENDED, as it is less secure. The JWK x5c parameter MAY be used to provide X.509 representations of
* keys provided. When used, the bare key values MUST still be present and MUST match those in the certificate.
* @type {string}
* @memberof OidcConfiguration
*/
jwks_uri: string;
/**
* OpenID Connect Dynamic Client Registration Endpoint URL
* @type {string}
* @memberof OidcConfiguration
*/
registration_endpoint?: string;
/**
* OpenID Connect Supported Request Object Signing Algorithms
*
* JSON array containing a list of the JWS signing algorithms (alg values) supported by the OP for Request Objects,
* which are described in Section 6.1 of OpenID Connect Core 1.0 [OpenID.Core]. These algorithms are used both when
* the Request Object is passed by value (using the request parameter) and when it is passed by reference
* (using the request_uri parameter).
* @type {Array<string>}
* @memberof OidcConfiguration
*/
request_object_signing_alg_values_supported?: Array<string>;
/**
* OpenID Connect Request Parameter Supported
*
* Boolean value specifying whether the OP supports use of the request parameter, with true indicating support.
* @type {boolean}
* @memberof OidcConfiguration
*/
request_parameter_supported?: boolean;
/**
* OpenID Connect Request URI Parameter Supported
*
* Boolean value specifying whether the OP supports use of the request_uri parameter, with true indicating support.
* @type {boolean}
* @memberof OidcConfiguration
*/
request_uri_parameter_supported?: boolean;
/**
* OpenID Connect Requires Request URI Registration
*
* Boolean value specifying whether the OP requires any request_uri values used to be pre-registered
* using the request_uris registration parameter.
* @type {boolean}
* @memberof OidcConfiguration
*/
require_request_uri_registration?: boolean;
/**
* OAuth 2.0 Supported Response Modes
*
* JSON array containing a list of the OAuth 2.0 response_mode values that this OP supports.
* @type {Array<string>}
* @memberof OidcConfiguration
*/
response_modes_supported?: Array<string>;
/**
* OAuth 2.0 Supported Response Types
*
* JSON array containing a list of the OAuth 2.0 response_type values that this OP supports. Dynamic OpenID
* Providers MUST support the code, id_token, and the token id_token Response Type values.
* @type {Array<string>}
* @memberof OidcConfiguration
*/
response_types_supported: Array<string>;
/**
* OAuth 2.0 Token Revocation URL
*
* URL of the authorization server's OAuth 2.0 revocation endpoint.
* @type {string}
* @memberof OidcConfiguration
*/
revocation_endpoint?: string;
/**
* OAuth 2.0 Supported Scope Values
*
* JSON array containing a list of the OAuth 2.0 [RFC6749] scope values that this server supports. The server MUST
* support the openid scope value. Servers MAY choose not to advertise some supported scope values even when this parameter is used
* @type {Array<string>}
* @memberof OidcConfiguration
*/
scopes_supported?: Array<string>;
/**
* OpenID Connect Supported Subject Types
*
* JSON array containing a list of the Subject Identifier types that this OP supports. Valid types include
* pairwise and public.
* @type {Array<string>}
* @memberof OidcConfiguration
*/
subject_types_supported: Array<string>;
/**
* OAuth 2.0 Token Endpoint URL
* @type {string}
* @memberof OidcConfiguration
*/
token_endpoint: string;
/**
* OAuth 2.0 Supported Client Authentication Methods
*
* JSON array containing a list of Client Authentication methods supported by this Token Endpoint. The options are
* client_secret_post, client_secret_basic, client_secret_jwt, and private_key_jwt, as described in Section 9 of OpenID Connect Core 1.0
* @type {Array<string>}
* @memberof OidcConfiguration
*/
token_endpoint_auth_methods_supported?: Array<string>;
/**
* OpenID Connect Userinfo URL
*
* URL of the OP's UserInfo Endpoint.
* @type {string}
* @memberof OidcConfiguration
*/
userinfo_endpoint?: string;
/**
* OpenID Connect User Userinfo Signing Algorithm
*
* Algorithm used to sign OpenID Connect Userinfo Responses.
* @type {Array<string>}
* @memberof OidcConfiguration
*/
userinfo_signed_response_alg: Array<string>;
/**
* OpenID Connect Supported Userinfo Signing Algorithm
*
* JSON array containing a list of the JWS [JWS] signing algorithms (alg values) [JWA] supported by the UserInfo Endpoint to encode the Claims in a JWT [JWT].
* @type {Array<string>}
* @memberof OidcConfiguration
*/
userinfo_signing_alg_values_supported?: Array<string>;
}
/**
* Check if a given object implements the OidcConfiguration interface.
*/
export declare function instanceOfOidcConfiguration(value: object): value is OidcConfiguration;
export declare function OidcConfigurationFromJSON(json: any): OidcConfiguration;
export declare function OidcConfigurationFromJSONTyped(json: any, ignoreDiscriminator: boolean): OidcConfiguration;
export declare function OidcConfigurationToJSON(json: any): OidcConfiguration;
export declare function OidcConfigurationToJSONTyped(value?: OidcConfiguration | null, ignoreDiscriminator?: boolean): any;