UNPKG

types-yoomoneycheckoutwidget

Version:

TypeScript definitions for YooKassa Widget - YooMoneyCheckoutWidget (ЮKassa)

83 lines (78 loc) 4.59 kB
/// <reference path="global.d.ts" /> export = YooWidget; export as namespace YooWidget; declare namespace YooWidget { /** * Описание https://yookassa.ru/developers/payment-acceptance/integration-scenarios/widget/reference#initialization-parameters */ interface YooMoneyCheckoutWidgetConfig { /** Токен, который вы получили после создания платежа */ confirmation_token: string; /** Ссылка на страницу завершения оплаты */ return_url?: string; /** Настройка виджета */ customization?: { /** Настройка способа отображения*/ modal?: boolean, /** Выбор способа оплаты для отображения, не все могут быть выбраны вместе*/ payment_methods?: ('bank_card' | 'yoo_money' | 'mir_pay' | 'sberbank' | 'tinkoff_bank' | 'sbp' | 'sber_loan')[], /** цвета в формате #FFFFFF (https://yookassa.ru/developers/payment-acceptance/integration-scenarios/widget/reference#customize-color) */ colors?: { /** Цвет акцентных элементов: кнопка Заплатить, выбранные переключатели, опции и текстовые поля */ control_primary?: string, /** Цвет текста в кнопке 'Заплатить' и содержимого акцентных переключателей и опций */ control_primary_content?: string, /** Цвет неакцентных элементов интерфейса.*/ control_secondary?: string /** Цвет платежной формы и ее элементов */ background?: string, /** Цвет границ и разделителей */ border?: string, /** Цвет всех текстов на платежной форме, кроме текстов в кнопке Заплатить и во всплывающих подсказках.*/ text?: string } }; /** * Обработка ошибок инициализации. * Вызывается, если неверна конфигурация. Если карта не прошла, то все ошибки внутри виджета, дефолтно он сам работает с ними. * */ error_callback: (error: YooMoneyErrorCallbackResult) => void; } interface YooMoneyErrorCallbackResult { /** * все коды ответов: https://yookassa.ru/developers/payment-acceptance/integration-scenarios/widget/reference#errors * "internal_service_error" - токен протух или неверный, * "invalid_token" - токен невалиден, * "invalid_combination_of_payment_methods" */ error: string; } /** * Описание https://yookassa.ru/developers/payment-acceptance/integration-scenarios/widget/reference#methods */ type YooMoneyCheckoutWidget = { new(config: YooMoneyCheckoutWidgetConfig): YooMoneyCheckoutWidget; /** * Описание: https://yookassa.ru/developers/payment-acceptance/integration-scenarios/widget/reference#widget-events * @param eventName 'complete' - после оплаты * 'modal_close' - после закрытия модального окна платежной формы если customization.modal==true * 'success' - Приходит, только если не подписались на complete, и пользователь успешно ввел данные и подтвердил платеж * 'fail' - если вы отключили обработку неуспешных попыток в виджете: пользователь выбрал любой способ оплаты, но платеж не прошел; закончился срок действия токена. * * @param callback */ on: ( eventName: 'success' | 'fail' | 'complete' | 'modal_close', callback: (result: { status: string }) => void ) => void; /** * Отображение платежной формы * @param id должно быть пустым только если customization.modal!=true */ render: (id?: string) => Promise<undefined>; /** * Удаление платежной формы */ destroy: () => void; } }