UNPKG

@etsoo/materialui

Version:

TypeScript Material-UI Implementation

48 lines (47 loc) 1.52 kB
import { ApiRefreshTokenDto, IApi, IApiPayload, TokenAuthRQ } from "@etsoo/appscript"; import { ReactAppType } from "./ReactApp"; import { IServiceUser, ServiceUserToken } from "./IServiceUser"; import { IActionResult } from "@etsoo/shared"; /** * Service application interface */ export interface IServiceApp extends ReactAppType { /** * Core system API */ readonly coreApi: IApi; /** * Core system origin */ readonly coreOrigin: string; /** * Get token authorization request data * @param api API, if not provided, use the core API * @returns Result */ getTokenAuthRQ(api?: IApi): TokenAuthRQ; /** * Load core system UI * @param tryLogin Try login or not */ loadCore(tryLogin?: boolean): void; /** * Load URL with core origin * @param url URL */ loadUrlEx(url: string): void; /** * Switch organization * @param organizationId Organization ID * @param fromOrganizationId From organization ID * @param payload Payload */ switchOrg(organizationId: number, fromOrganizationId?: number, payload?: IApiPayload<IActionResult<IServiceUser & ServiceUserToken>>): Promise<IActionResult<IServiceUser & ServiceUserToken> | undefined>; /** * * @param user Current user * @param core Core system API token data * @param dispatch User state dispatch */ userLoginEx(user: IServiceUser & ServiceUserToken, core?: ApiRefreshTokenDto, dispatch?: boolean): void; }