UNPKG

@telegram-apps/sdk

Version:

TypeScript Source Development Kit for Telegram Mini Apps client application.

17 lines (16 loc) 819 B
import { AnyFn } from '../../types.js'; import { IsSupportedType, SafeWrapped, Supports } from './wrapSafe.js'; export interface SafeWrapFn<S extends boolean> { <Fn extends AnyFn>(method: string, fn: Fn): SafeWrapped<Fn, S, never>; <Fn extends AnyFn>(method: string, fn: Fn, isSupported: IsSupportedType): SafeWrapped<Fn, true, never>; <Fn extends AnyFn, S extends Supports<Fn>>(method: string, fn: Fn, isSupported: IsSupportedType, supports: S): SafeWrapped<Fn, true, S>; } interface Options { isMounted?: () => boolean; isSupported?: IsSupportedType; } export declare function createWrapSafe(component?: string): SafeWrapFn<false>; export declare function createWrapSafe<O extends Options>(component: string, options: O): SafeWrapFn<O extends { isSupported: any; } ? true : false>; export {};