UNPKG

@etsoo/smarterp-core

Version:

TypeScript APIs for SmartERP Core

153 lines (152 loc) 5.24 kB
import { IApi, IApiPayload } from "@etsoo/restclient"; import { ListType, ListType1 } from "@etsoo/shared"; import { PinyinRQ } from "./rq/public/PinyinRQ"; import { CreateBarcodeRQ } from "./rq/public/CreateBarcodeRQ"; import { CurrencyItem } from "./dto/public/CurrencyItem"; import { RegionData } from "./dto/public/RegionData"; import { PlaceQueryRQ } from "./rq/public/PlaceQueryRQ"; import { PlaceCommon } from "./dto/public/PlaceCommon"; import { BaseApi, CultureItem, Currency, CustomCulture, IApp, MapApiProvider, ProductUnit, ResultPayload } from "@etsoo/appscript"; import { MemberInvitationDto } from "./dto/public/MemberInvitationDto"; import { AcceptInvitationRQ } from "./rq/public/AcceptInvitationRQ"; import { ChinaPinData } from "./dto/public/ChinaPinData"; import { ParseNameRQ } from "./rq/public/ParseNameRQ"; import { NameData } from "./dto/public/NameData"; /** * Public API * 公共接口 */ export declare class PublicApi extends BaseApi { /** * Constructor * @param app Application * @param api API */ constructor(app: IApp, api?: IApi); /** * Accept invitation * @param rq Request data * @param payload Payload * @returns Result */ acceptInvitation(rq: AcceptInvitationRQ, payload?: ResultPayload): Promise<import("@etsoo/shared").IActionResult<{}> | undefined>; /** * Create barcode * @param rq Request data * @param payload Payload * @returns Result */ createBarcode(rq: CreateBarcodeRQ, payload?: IApiPayload<string>): Promise<string | undefined>; /** * Get currency label * @param currency Currency * @returns Label */ getCurrencyLabel(currency: Currency | string): string; /** * Get cultures * @param ids Culture ids to include and order by * @param payload Payload * @returns Result */ getCultures(ids: string[], payload?: IApiPayload<CultureItem[]>): Promise<CultureItem[] | undefined>; /** * Get currencies * @param ids Currency ids to include and order by * @param payload Payload * @returns Result */ getCurrencies(ids?: string[], payload?: IApiPayload<CurrencyItem[]>): Promise<CurrencyItem[] | undefined>; /** * Get custom resources * @param culture Culture * @param payload Payload * @returns Result */ getCustomResources(culture: string, payload?: IApiPayload<CustomCulture[]>): Promise<CustomCulture[] | undefined>; /** * Get Pinyin * @param rq Request data * @param payload Payload * @returns Result */ getPinyin(rq: PinyinRQ, payload?: IApiPayload<string>): Promise<string | undefined>; /** * Get regions * @param ids Region ids to include and order by * @param payload Payload * @returns Result */ getRegions(ids?: string[], payload?: IApiPayload<RegionData[]>): Promise<RegionData[] | undefined>; /** * Get product unit's label * Please define the label in culture with key 'unitPC' for ProductUnit.PC like that * @param unit Unit * @param isJoined Add the join label like 'per Kg' for Kg * @returns Label */ getUnitLabel(unit: ProductUnit | number, isJoined?: boolean | string): string; private getUnitJoin; /** * Get mobile base64 QRCode * @param id User id * @param host Host URL * @param payload Payload */ mobileQRCode(id?: string, host?: string, payload?: IApiPayload<string>): Promise<string | undefined>; /** * Parse China PIN * @param pin Pin code * @param payload Payload * @returns Result */ parseChinaPin(pin: string, payload?: IApiPayload<ChinaPinData>): Promise<ChinaPinData | undefined>; /** * Parse name * @param rq Request data * @param payload Payload * @returns Result */ parseName(rq: ParseNameRQ, payload?: IApiPayload<NameData>): Promise<NameData | undefined>; /** * Query place * @param rq Request data * @param payload Payload * @returns Result */ queryPlace(rq: PlaceQueryRQ, payload?: IApiPayload<PlaceCommon[]>): Promise<[MapApiProvider, PlaceCommon[] | undefined]>; /** * Read member invitation * @param id Id * @param payload Payload * @returns Result */ readInvitation(id: string, payload?: IApiPayload<MemberInvitationDto>): Promise<MemberInvitationDto | undefined>; /** * * Get all repeat options * @param options Define the order and limit the items * @param isJoined Add the join label * @returns Result */ repeatOptions(options?: string[], isJoined?: boolean): ListType[]; /** * Get all supported cultures * @param payload Payload * @returns Result */ supportedCultures(payload?: IApiPayload<ListType1[]>): Promise<ListType1[] | undefined>; /** * Get all product units * @returns Units */ units(): ListType[]; /** * * Get all product units * @param options Define the order and limit the items * @param isJoined Add the join label like 'per Kg' for Kg * @returns Units */ units(options?: string[], isJoined?: boolean): ListType[]; }