export declare type ValueOf = T[keyof T]; export interface EnumValueStatic { /** * 用于存储在 constants kv 中的 key */ key: string; /** * 主要用于使用,SexEnumValue.types.male */ types: T; /** * 判断枚举:@IsIn(SexEnumValue.keys) */ keys: string[]; /** * 在 MetaInfo 中可以这样使用:({ accessible: 'readonly', name: '性别', type: 'EnumFilter', enumData: SexEnumValue.data }) */ data: { [key in keyof T]: string; }; } export declare abstract class CanRegEnumValue { static reg(key: string, value?: string, desc?: string): void; } export declare class SexEnumValue { static key: string; static types: { male: string; female: string; }; static get keys(): string[]; static get data(): { [key in keyof typeof SexEnumValue.types]: string; }; } export declare type SexType = ValueOf;