@leancodepl/kratos
Version:
Headless React components library for building Ory Kratos authentication flows
125 lines • 4.09 kB
TypeScript
import { VerifiableIdentityAddress } from './VerifiableIdentityAddress';
import { RecoveryIdentityAddress } from './RecoveryIdentityAddress';
import { IdentityCredentials } from './IdentityCredentials';
/**
* An [identity](https://www.ory.sh/docs/kratos/concepts/identity-user-model) represents a (human) user in Ory.
* @export
* @interface Identity
*/
export interface Identity {
/**
* CreatedAt is a helper struct field for gobuffalo.pop.
* @type {Date}
* @memberof Identity
*/
created_at?: Date;
/**
* Credentials represents all credentials that can be used for authenticating this identity.
* @type {{ [key: string]: IdentityCredentials; }}
* @memberof Identity
*/
credentials?: {
[key: string]: IdentityCredentials;
};
/**
* ID is the identity's unique identifier.
*
* The Identity ID can not be changed and can not be chosen. This ensures future
* compatibility and optimization for distributed stores such as CockroachDB.
* @type {string}
* @memberof Identity
*/
id: string;
/**
* NullJSONRawMessage represents a json.RawMessage that works well with JSON, SQL, and Swagger and is NULLable-
* @type {object}
* @memberof Identity
*/
metadata_admin?: object | null;
/**
* NullJSONRawMessage represents a json.RawMessage that works well with JSON, SQL, and Swagger and is NULLable-
* @type {object}
* @memberof Identity
*/
metadata_public?: object | null;
/**
*
* @type {string}
* @memberof Identity
*/
organization_id?: string | null;
/**
* RecoveryAddresses contains all the addresses that can be used to recover an identity.
* @type {Array<RecoveryIdentityAddress>}
* @memberof Identity
*/
recovery_addresses?: Array<RecoveryIdentityAddress>;
/**
* SchemaID is the ID of the JSON Schema to be used for validating the identity's traits.
* @type {string}
* @memberof Identity
*/
schema_id: string;
/**
* SchemaURL is the URL of the endpoint where the identity's traits schema can be fetched from.
*
* format: url
* @type {string}
* @memberof Identity
*/
schema_url: string;
/**
* State is the identity's state.
*
* This value has currently no effect.
* active StateActive
* inactive StateInactive
* @type {string}
* @memberof Identity
*/
state?: IdentityStateEnum;
/**
*
* @type {Date}
* @memberof Identity
*/
state_changed_at?: Date;
/**
* Traits represent an identity's traits. The identity is able to create, modify, and delete traits
* in a self-service manner. The input will always be validated against the JSON Schema defined
* in `schema_url`.
* @type {any}
* @memberof Identity
*/
traits: any | null;
/**
* UpdatedAt is a helper struct field for gobuffalo.pop.
* @type {Date}
* @memberof Identity
*/
updated_at?: Date;
/**
* VerifiableAddresses contains all the addresses that can be verified by the user.
* @type {Array<VerifiableIdentityAddress>}
* @memberof Identity
*/
verifiable_addresses?: Array<VerifiableIdentityAddress>;
}
/**
* @export
*/
export declare const IdentityStateEnum: {
readonly Active: "active";
readonly Inactive: "inactive";
readonly UnknownDefaultOpenApi: "11184809";
};
export type IdentityStateEnum = typeof IdentityStateEnum[keyof typeof IdentityStateEnum];
/**
* Check if a given object implements the Identity interface.
*/
export declare function instanceOfIdentity(value: object): value is Identity;
export declare function IdentityFromJSON(json: any): Identity;
export declare function IdentityFromJSONTyped(json: any, ignoreDiscriminator: boolean): Identity;
export declare function IdentityToJSON(json: any): Identity;
export declare function IdentityToJSONTyped(value?: Identity | null, ignoreDiscriminator?: boolean): any;
//# sourceMappingURL=Identity.d.ts.map