58 lines
3.0 KiB
TypeScript
58 lines
3.0 KiB
TypeScript
|
|
/**
|
|||
|
|
* Metadata from OAuth 2.0 client authentication API as per
|
|||
|
|
* https://spec.matrix.org/v1.18/client-server-api/#get_matrixclientv1auth_metadata
|
|||
|
|
* With validated properties required in type
|
|||
|
|
*/
|
|||
|
|
export interface ValidatedAuthMetadata {
|
|||
|
|
/** List of actions that the account management URL supports. */
|
|||
|
|
account_management_actions_supported?: string[];
|
|||
|
|
/** The URL where the user is able to access the account management capabilities of the homeserver. */
|
|||
|
|
account_management_uri?: string;
|
|||
|
|
/** URL of the authorization endpoint, necessary to use the authorization code grant. */
|
|||
|
|
authorization_endpoint: string;
|
|||
|
|
/**
|
|||
|
|
* List of OAuth 2.0 Proof Key for Code Exchange (PKCE) code challenge methods that the server supports at the authorization endpoint.
|
|||
|
|
*
|
|||
|
|
* This array MUST contain at least the S256 value, for improved security in the authorization code grant.
|
|||
|
|
*/
|
|||
|
|
code_challenge_methods_supported: string[];
|
|||
|
|
/** URL of the device authorization endpoint, as defined in RFC 8628, necessary to use the device authorization grant. */
|
|||
|
|
device_authorization_endpoint?: string;
|
|||
|
|
/**
|
|||
|
|
* List of OAuth 2.0 grant type strings that the server supports at the token endpoint.
|
|||
|
|
*
|
|||
|
|
* This array MUST contain at least the authorization_code and refresh_token values,
|
|||
|
|
* for clients to be able to use the authorization code grant and refresh token grant, respectively.
|
|||
|
|
*/
|
|||
|
|
grant_types_supported: string[];
|
|||
|
|
/** The authorization server’s issuer identifier, which is a URL that uses the https scheme and has no query or fragment components. */
|
|||
|
|
issuer: string;
|
|||
|
|
/** List of OpenID Connect prompt values that the server supports at the authorization endpoint. */
|
|||
|
|
prompt_values_supported?: string[];
|
|||
|
|
/** URL of the client registration endpoint, necessary to perform dynamic registration of a client. */
|
|||
|
|
registration_endpoint: string;
|
|||
|
|
/**
|
|||
|
|
* List of OAuth 2.0 response mode strings that the server supports at the authorization endpoint.
|
|||
|
|
*
|
|||
|
|
* This array MUST contain at least the query and fragment values, for improved security in the authorization code grant.
|
|||
|
|
*/
|
|||
|
|
response_modes_supported: string[];
|
|||
|
|
/**
|
|||
|
|
* List of OAuth 2.0 response type strings that the server supports at the authorization endpoint.
|
|||
|
|
*
|
|||
|
|
* This array MUST contain at least the code value, for clients to be able to use the authorization code grant.
|
|||
|
|
*/
|
|||
|
|
response_types_supported: string[];
|
|||
|
|
/** URL of the revocation endpoint, necessary to log out a client by invalidating its access and refresh tokens. */
|
|||
|
|
revocation_endpoint: string;
|
|||
|
|
/** URL of the token endpoint, used by the grants. */
|
|||
|
|
token_endpoint: string;
|
|||
|
|
}
|
|||
|
|
/**
|
|||
|
|
* Validates OAuth 2.0 auth metadata as defined by
|
|||
|
|
* https://spec.matrix.org/v1.18/client-server-api/#get_matrixclientv1auth_metadata
|
|||
|
|
* @param authMetadata - json object
|
|||
|
|
* @returns boolean of whether the input is valid
|
|||
|
|
*/
|
|||
|
|
export declare const isValidAuthMetadata: (authMetadata: unknown) => authMetadata is ValidatedAuthMetadata;
|
|||
|
|
//# sourceMappingURL=discover.d.ts.map
|