import { AbortablePromise } from 'better-promises'; import { ShowOptions } from './types.js'; /** * Signal indicating if popups are supported. */ export declare const isSupported: import('@telegram-apps/signals').Computed; /** * @deprecated Deprecated for consistence naming, to be removed in the next major update. Use * `show` instead. */ export declare const open: import('../../wrappers/wrapSafe.js').SafeWrapped<(options: ShowOptions) => AbortablePromise, true, never>; /** * @deprecated Deprecated for consistence naming, to be removed in the next major update. Use * `showPromise` instead. */ declare const openPromise: import('@telegram-apps/signals').Computed | undefined>; /** * @deprecated Deprecated for consistence naming, to be removed in the next major update. Use * `isShown` instead. */ declare const isOpened: import('@telegram-apps/signals').Computed; /** * @deprecated Deprecated for consistence naming, to be removed in the next major update. Use * `showError` instead. */ declare const openError: import('@telegram-apps/signals').Computed; export { openPromise, isOpened, openError }; /** * A method that shows a native popup described by the `params` argument. * The promise will be resolved when the popup is closed. Resolved value will have * an identifier of the pressed button. * * If a user clicked outside the popup or clicked the top right popup close * button, null will be resolved. * * @param options - popup parameters. * @since Mini Apps v6.2 * @throws {InvalidArgumentsError} Invalid title * @throws {InvalidArgumentsError} Invalid message * @throws {InvalidArgumentsError} Invalid buttons count * @throws {InvalidArgumentsError} Invalid button id length * @throws {InvalidArgumentsError} Invalid button text length * @throws {ConcurrentCallError} A popup is already opened * @throws {FunctionNotAvailableError} The environment is unknown * @throws {FunctionNotAvailableError} The SDK is not initialized * @throws {FunctionNotAvailableError} The function is not supported * @example * if (open.isAvailable()) { * const buttonId = await open({ * title: 'Confirm action', * message: 'Do you really want to buy this burger?', * buttons: [ * { id: 'yes', text: 'Yes' }, * { id: 'no', type: 'destructive', text: 'No' }, * ], * }); * } */ export declare const show: import('../../wrappers/wrapSafe.js').SafeWrapped<(options: ShowOptions) => AbortablePromise, true, never>; export declare const showPromise: import('@telegram-apps/signals').Computed | undefined>, isShown: import('@telegram-apps/signals').Computed; export declare const showError: import('@telegram-apps/signals').Computed;