UNPKG

@etsoo/appscript

Version:

Applications shared TypeScript framework

129 lines (128 loc) 4.66 kB
import { IApiPayload } from "@etsoo/restclient"; import { IUser } from "../state/User"; import { BaseApi } from "./BaseApi"; import { ResultPayload } from "./dto/ResultPayload"; import { DataTypes, IActionResult } from "@etsoo/shared"; import { RefreshTokenProps, RefreshTokenResult } from "../app/IApp"; import { TokenInputRQ } from "./rq/TokenRQ"; import { ApiRefreshTokenDto } from "./dto/ApiRefreshTokenDto"; import { LoginInputAuthResult, LoginInputRQ } from "./rq/LoginRQ"; import { ResetPasswordInputRQ } from "./rq/ResetPasswordRQ"; import { SignoutRQ } from "./rq/SignoutRQ"; import { SwitchOrgRQ } from "./rq/SwitchOrgRQ"; import { AuthRequest } from "./rq/AuthRequest"; import { CheckUserIdentifierRQ } from "./rq/CheckUserIdentifierRQ"; import { AdminSupportRQ } from "./rq/AdminSupportRQ"; /** * Authentication API */ export declare class AuthApi extends BaseApi { /** * Header token field name */ static HeaderTokenField: string; /** * Admin support * @param rq Request data * @param payload Payload * @returns Result */ adminSupport(rq: AdminSupportRQ, payload?: IApiPayload<IActionResult<LoginInputAuthResult>>): Promise<IActionResult<LoginInputAuthResult> | undefined>; /** * API refresh token * @param rq Request data * @param payload Payload * @returns Result */ apiRefreshToken(rq: TokenInputRQ, payload?: IApiPayload<ApiRefreshTokenDto>): Promise<ApiRefreshTokenDto | undefined>; /** * Authorization request * @param auth Authorization request data * @param payload Payload */ authRequest(auth: AuthRequest, payload?: IApiPayload<string>): Promise<string | undefined>; /** * Change password * @param oldPassword Ole password * @param password New password * @param payload Payload * @returns Result */ changePassword(oldPassword: string, password: string, payload?: ResultPayload): Promise<IActionResult<{}> | undefined>; /** * Check user identifier * @param type User identifier type * @param openid Open ID * @param payload Payload * @returns Result */ checkUserIdentifier(type: CheckUserIdentifierRQ["type"], openid: CheckUserIdentifierRQ["openid"], payload?: IApiPayload<DataTypes.TristateEnum>): Promise<DataTypes.TristateEnum | undefined>; /** * Exchange token * @param rq Request data * @param payload Payload * @returns Result */ exchangeToken(rq: TokenInputRQ, payload?: IApiPayload<ApiRefreshTokenDto>): Promise<ApiRefreshTokenDto | undefined>; /** * Get auth request * @param deviceId Device ID * @param payload Payload * @param apiHost API host * @returns Result */ getAuthRequest(deviceId?: string, payload?: IApiPayload<AuthRequest>, apiHost?: string): Promise<AuthRequest | undefined>; /** * Get log in url * @param deviceId Device ID * @param payload Payload * @param apiHost API host * @returns Result */ getLogInUrl(deviceId?: string, payload?: IApiPayload<string>, apiHost?: string): Promise<string | undefined>; /** * Login * @param rq Request data * @param payload Payload * @param tokenKey Refresh token key * @returns Result */ login<T extends IUser>(rq: LoginInputRQ, payload?: IApiPayload<IActionResult<T | LoginInputAuthResult>>, tokenKey?: string): Promise<[ IActionResult<T | LoginInputAuthResult> | undefined, string | null ]>; /** * Login id check * @param id Check id * @param payload Payload * @returns Result */ loginId(id: string, payload?: ResultPayload): Promise<IActionResult<{}> | undefined>; /** * Refresh token * @param props Props * @returns Result */ refreshToken<R>(props: RefreshTokenProps): Promise<RefreshTokenResult<R>>; /** * Reset password * @param rq Request data * @param payload Payload * @returns Result */ resetPassword(rq: ResetPasswordInputRQ, payload?: ResultPayload): Promise<IActionResult<{}> | undefined>; /** * Signout * @param rq Request data * @param payload Payload * @returns Result */ signout(rq: SignoutRQ, payload?: ResultPayload): Promise<IActionResult<{}> | undefined>; /** * Switch organization * @param rq Request data * @param tokenKey Refresh token key * @param payload Payload */ switchOrg<T extends IUser>(rq: SwitchOrgRQ, payload?: IApiPayload<IActionResult<T>>, tokenKey?: string): Promise<[IActionResult<T> | undefined, string | null]>; }