@etsoo/smarterp-core
Version:
TypeScript APIs for SmartERP Core
144 lines (143 loc) • 4.89 kB
TypeScript
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, ProductUnit, ResultPayload } from "@etsoo/appscript";
import { MemberInvitationDto } from "./dto/public/MemberInvitationDto";
import { AcceptInvitationRQ } from "./rq/public/AcceptInvitationRQ";
import { ChinaPinData } from "./dto/public/ChinaPinData";
/**
* 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>;
/**
* Query place
* @param rq Request data
* @param payload Payload
* @returns Result
*/
queryPlace(rq: PlaceQueryRQ, payload?: IApiPayload<PlaceCommon[]>): Promise<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[];
}