@altostra/core
Version:
Core library for shared types and logic
54 lines (53 loc) • 1.46 kB
TypeScript
export interface UsersManagementClientOptions {
clientId?: string;
clientSecret?: string;
domain: string;
}
export declare type UsersManagementClient = new (options: UsersManagementClientOptions) => UsersManagementClientInstance;
export interface UsersManagementClientInstance {
getUser(params: ObjectWithId): Promise<User>;
}
export declare type AppMetadata = Record<string, any>;
export declare type UserMetadata = Record<string, any>;
export interface ObjectWithId {
id: string;
}
export interface User {
email?: string;
email_verified?: boolean;
username?: string;
phone_number?: string;
phone_verified?: boolean;
user_id?: string;
created_at?: string;
updated_at?: string;
identities?: Identity[];
app_metadata?: AppMetadata;
user_metadata?: UserMetadata;
picture?: string;
name?: string;
nickname?: string;
multifactor?: string[];
last_ip?: string;
last_login?: string;
last_password_reset?: string;
logins_count?: number;
blocked?: boolean;
given_name?: string;
family_name?: string;
}
export interface Identity {
connection: string;
user_id: string;
provider: string;
isSocial: boolean;
access_token?: string;
profileData?: {
email?: string;
email_verified?: boolean;
name?: string;
phone_number?: string;
phone_verified?: boolean;
request_language?: string;
};
}