У меня есть этот объект:
export interface ClientOpts {
key: string,
listener: Function,
host: string,
port: number
unlockRequestTimeout: number;
lockRequestTimeout: number;
unlockRetryMax: number;
lockRetryMax: number;
ttl: number
}
Мне интересно, есть ли способ получить вышеперечисленное из объекта, например, так:
export const validConstructorOptions = {
key: 'string',
listener: 'Function',
host: 'string',
port: 'number',
unlockRequestTimeout: 'number',
lockRequestTimeout: 'number',
unlockRetryMax: 'number',
lockRetryMax: 'number'
};
один способ сделать это,вместо этого будет что-то вроде этого:
export const validConstructorOptions = {
key: 'string',
listener: ()=>{},
host: 'string',
port: 999,
unlockRequestTimeout: 999,
lockRequestTimeout: 999,
unlockRetryMax: 999,
lockRetryMax: 999
};
, а затем выполните
export type ClientOpts = typeof validConstructorOptions;
, но мне интересно, есть ли способ сделать это, используя только строки в объекте.