telebot
Version:
The easy way to write Telegram bots.
10 lines (9 loc) • 504 B
TypeScript
export declare type ArgumentsType<T extends (...args: any[]) => any> = T extends (...args: infer A) => any ? A : never;
export declare type RequireFields<T, K extends keyof T = keyof T> = Omit<T, K> & Required<Pick<T, K>>;
export declare type RequiredKeys<T> = {
[K in keyof T]-?: {} extends Pick<T, K> ? never : K;
}[keyof T];
export declare type OptionalKeys<T> = {
[K in keyof T]-?: {} extends Pick<T, K> ? K : never;
}[keyof T];
export declare type PropertyType<T, K extends keyof T> = T[K];