oak-general-business/es/aspects/AspectDict.d.ts

255 lines
9.3 KiB
TypeScript

import { NativeEnv, WebEnv, WechatMpEnv } from 'oak-domain/lib/types/Environment';
import { AppType } from '../oak-app-domain/Application/Schema';
import { EntityDict } from '../oak-app-domain';
import { Config } from '../types/Config';
import { Style } from '../types/Style';
import { MaterialType } from '../types/WeChat';
import { BackendRuntimeContext } from '../context/BackendRuntimeContext';
import { WechatPublicEventData, WechatMpEventData } from 'oak-external-sdk';
export type AspectDict<ED extends EntityDict> = {
mergeUser: (params: {
from: string;
to: string;
}, context: BackendRuntimeContext<ED>) => Promise<void>;
refreshWechatPublicUserInfo: (params: {}, context: BackendRuntimeContext<ED>) => Promise<void>;
getWechatMpUserPhoneNumber: (params: {
code: string;
env: WechatMpEnv;
}, context: BackendRuntimeContext<ED>) => Promise<string>;
loginByMobile: (params: {
captcha?: string;
password?: string;
mobile: string;
disableRegister?: boolean;
env: WebEnv | WechatMpEnv | NativeEnv;
}, context: BackendRuntimeContext<ED>) => Promise<string>;
loginWechat: ({ code, env, wechatLoginId, }: {
code: string;
env: WebEnv;
wechatLoginId?: string;
}, context: BackendRuntimeContext<ED>) => Promise<string>;
logout: (params: {
tokenValue: string;
}, context: BackendRuntimeContext<ED>) => Promise<void>;
loginWechatMp: ({ code, env, }: {
code: string;
env: WechatMpEnv;
}, context: BackendRuntimeContext<ED>) => Promise<string>;
syncUserInfoWechatMp: ({ nickname, avatarUrl, encryptedData, iv, signature, }: {
nickname: string;
avatarUrl: string;
encryptedData: string;
iv: string;
signature: string;
}, context: BackendRuntimeContext<ED>) => Promise<void>;
wakeupParasite: (params: {
id: string;
env: WebEnv | WechatMpEnv;
}, context: BackendRuntimeContext<ED>) => Promise<string>;
refreshToken: (params: {
tokenValue: string;
env: WebEnv | WechatMpEnv | NativeEnv;
}, context: BackendRuntimeContext<ED>) => Promise<string>;
sendCaptcha: (params: {
mobile: string;
env: WechatMpEnv | WebEnv;
type: 'login' | 'changePassword' | 'confirm';
}, context: BackendRuntimeContext<ED>) => Promise<string>;
getApplication: (params: {
type: AppType;
domain: string;
data: ED['application']['Selection']['data'];
appId?: string;
}, context: BackendRuntimeContext<ED>) => Promise<string>;
signatureJsSDK: (params: {
url: string;
env: WebEnv;
}, context: BackendRuntimeContext<ED>) => Promise<{
signature: any;
noncestr: string;
timestamp: number;
appId: string;
}>;
updateConfig: (params: {
entity: 'platform' | 'system';
entityId: string;
config: Config;
}, context: BackendRuntimeContext<ED>) => Promise<void>;
updateStyle: (params: {
entity: 'platform' | 'system' | 'application';
entityId: string;
style: Style;
}, context: BackendRuntimeContext<ED>) => Promise<void>;
updateApplicationConfig: (params: {
entity: 'application';
entityId: string;
config: EntityDict['application']['Schema']['config'];
}, context: BackendRuntimeContext<ED>) => Promise<void>;
switchTo: (params: {
userId: string;
}, context: BackendRuntimeContext<ED>) => Promise<void>;
getMpUnlimitWxaCode: (wechatQrCodeId: string, context: BackendRuntimeContext<ED>) => Promise<string>;
createWechatLogin: (params: {
type: EntityDict['wechatLogin']['Schema']['type'];
interval: number;
}, context: BackendRuntimeContext<ED>) => Promise<string>;
unbindingWechat: (params: {
wechatUserId: string;
captcha?: string;
mobile?: string;
}, context: BackendRuntimeContext<ED>) => Promise<void>;
loginByWechat: (params: {
wechatLoginId: string;
env: WebEnv;
}, context: BackendRuntimeContext<ED>) => Promise<string>;
getInfoByUrl: (params: {
url: string;
}) => Promise<{
title: string;
publishDate: number | undefined;
imageList: string[];
}>;
getChangePasswordChannels: (params: {
userId: string;
}, context: BackendRuntimeContext<ED>) => Promise<string[]>;
updateUserPassword: (params: {
userId: string;
prevPassword?: string;
mobile?: string;
captcha?: string;
newPassword: string;
}, context: BackendRuntimeContext<ED>) => Promise<{
result: string;
times?: number;
}>;
createSession: (params: {
data?: WechatPublicEventData | WechatMpEventData;
type: AppType;
entity?: string;
entityId?: string;
}, context: BackendRuntimeContext<ED>) => Promise<string>;
uploadWechatMedia: (params: any, context: BackendRuntimeContext<ED>) => Promise<{
mediaId: string;
}>;
getCurrentMenu: (params: {
applicationId: string;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
getMenu: (params: {
applicationId: string;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
createMenu: (params: {
applicationId: string;
menuConfig: any;
id: string;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
createConditionalMenu: (params: {
applicationId: string;
menuConfig: any;
id: string;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
deleteConditionalMenu: (params: {
applicationId: string;
menuId: number;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
deleteMenu: (params: {
applicationId: string;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
batchGetArticle: (params: {
applicationId: string;
offset?: number;
count: number;
noContent?: 0 | 1;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
getArticle: (params: {
applicationId: string;
articleId: string;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
batchGetMaterialList: (params: {
applicationId: string;
type: MaterialType;
offset?: number;
count: number;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
getMaterial: (params: {
applicationId: string;
mediaId: string;
isPermanent?: boolean;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
deleteMaterial: (params: {
applicationId: string;
mediaId: string;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
createTag: (params: {
applicationId: string;
name: string;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
getTags: (params: {
applicationId: string;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
editTag: (params: {
applicationId: string;
id: number;
name: string;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
deleteTag: (params: {
applicationId: string;
id: string;
wechatId: number;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
syncMessageTemplate: (params: {
applicationId: string;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
getMessageType: (params: {}, content: BackendRuntimeContext<ED>) => Promise<string[]>;
syncTag: (params: {
applicationId: string;
id: string;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
oneKeySync: (params: {
applicationId: string;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
getTagUsers: (params: {
applicationId: string;
tagId: number;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
batchtagging: (params: {
applicationId: string;
openIdList: string[];
tagId: number;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
batchuntagging: (params: {
applicationId: string;
openIdList: string[];
tagId: number;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
getUserTags: (params: {
applicationId: string;
openId: string;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
getUsers: (params: {
applicationId: string;
nextOpenId: string;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
tagging: (params: {
applicationId: string;
openId: string;
tagIdList: number[];
}, context: BackendRuntimeContext<ED>) => Promise<any>;
syncToLocale: (params: {
applicationId: string;
openId: string;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
syncToWechat: (params: {
applicationId: string;
id: string;
openId: string;
}, context: BackendRuntimeContext<ED>) => Promise<any>;
syncSmsTemplate: (params: {
systemId: string;
origin: EntityDict['smsTemplate']['Schema']['origin'];
}, context: BackendRuntimeContext<ED>) => Promise<void>;
getApplicationPassports: (params: {
applicationId: string;
}, context: BackendRuntimeContext<ED>) => Promise<EntityDict['applicationPassport']['Schema'][]>;
};
export default AspectDict;