32 lines
900 B
TypeScript
32 lines
900 B
TypeScript
import { Boolean } from 'oak-domain/lib/types/DataType';
|
|
import { EntityShape } from 'oak-domain/lib/types/Entity';
|
|
import { Schema as System } from './System';
|
|
import { EntityDesc } from 'oak-domain/lib/types/EntityDesc';
|
|
type Type = 'password' | 'sms' | 'email' | 'wechatWeb' | 'wechatMp' | 'wechatPublic' | 'wechatPublicForWeb' | 'wechatMpForWeb';
|
|
type SmsConfig = {
|
|
mockSend?: boolean;
|
|
templateName?: string;
|
|
codeDuration?: number;
|
|
};
|
|
type EmailConifg = {
|
|
smtpUrl: string;
|
|
smtpAccount: string;
|
|
smtpPassword: string;
|
|
};
|
|
type PfwConfig = {
|
|
appId: string;
|
|
};
|
|
type MfwConfig = {
|
|
appId: string;
|
|
};
|
|
export interface Schema extends EntityShape {
|
|
system: System;
|
|
type: Type;
|
|
config?: SmsConfig | EmailConifg | PfwConfig | MfwConfig;
|
|
enabled: Boolean;
|
|
}
|
|
export declare const entityDesc: EntityDesc<Schema, '', '', {
|
|
type: Schema['type'];
|
|
}>;
|
|
export {};
|