UNPKG

yoomoney-sdk

Version:

⭐ Typed YooMoney Wallet SDK for NodeJS. Supported API's: Auth, Wallet & Notifications

203 lines (202 loc) 7.21 kB
import { URL } from 'url'; import { AutoComplete } from './autocomplete'; export declare const PaymentType: { readonly FromCard: "AC"; readonly FromWallet: "PC"; /** @deprecated **Вариант игнорируется ЮMoney**. Используйте {@link PaymentType.FromCard} (`"AC"`) */ readonly FromMobileBalance: "MC"; }; export type PaymentType = (typeof PaymentType)[keyof typeof PaymentType]; export declare const QuickPayForm: { readonly Button: "button"; }; export type QuickPayForm = (typeof QuickPayForm)[keyof typeof QuickPayForm]; export type FormConfig = { /** * Номер кошелька ЮMoney, на который нужно зачислять деньги отправителей. */ receiver: string; /** * Возможные значения: * * `button` — единственное валидной значение; * * Остальные сохранены для обратной совместимости * * */ quickPayForm?: AutoComplete<QuickPayForm>; /** * Назначение платежа. (До 150 символов) * * @deprecated **Поле игнорируется ЮMoney** */ targets?: string; /** * Способ оплаты. Возможные значения: * * `PC` — оплата из кошелька ЮMoney; * * `AC` — с банковской карты; * */ paymentType?: AutoComplete<PaymentType>; /** * Сумма перевода (спишется с отправителя). */ sum: number; /** * Название перевода в истории отправителя (для переводов из кошелька или с привязанной карты). Отображается в кошельке отправителя. * * Удобнее всего формировать его из названий магазина и товара. Например: `Мой магазин: валенки белые` * * @deprecated **Поле игнорируется ЮMoney** */ formComment?: string; /** * Название перевода на странице подтверждения. Рекомендуем делать его таким же, как `formComment`. * * @deprecated **Поле игнорируется ЮMoney** * */ shortDest?: string; /** Метка, которую сайт или приложение присваивает конкретному переводу. Например, в качестве метки можно указывать код или идентификатор заказа. (До 64 символов) */ label?: string; /** * Поле, в котором можно передать комментарий отправителя перевода. (До 200 символов) * * @deprecated **Поле игнорируется ЮMoney** * */ comment?: string; /** URL-адрес для редиректа после совершения перевода. */ successURL?: string; /** * Нужны ФИО отправителя. * * @deprecated **Поле игнорируется ЮMoney** * * */ needFio?: boolean; /** * Нужна электронная почты отправителя. * * @deprecated **Поле игнорируется ЮMoney** * **/ needEmail?: boolean; /** * Нужен телефон отправителя. * * @deprecated **Поле игнорируется ЮMoney** * * */ needPhone?: boolean; /** * Нужен адрес отправителя. * * @deprecated **Поле игнорируется ЮMoney** * * */ needAddress?: boolean; }; /** * Генерирует HTML формы для переводов * @class PaymentFormBuilder */ export declare class PaymentFormBuilder { readonly config: FormConfig; readonly url: string; /** * * Creates an instance of PaymentFormBuilder. * @param {FormConfig} [config={ * receiver: "", * sum: 10, * }] Изначальные настройки формы */ constructor(config?: FormConfig, url?: string); /** * Генерирует стандартные сеттеры * * @param {string} field * @return {Function} * @private */ private _makeSetter; /** * Задаёт сумму платежа * * @alias {@link setSum} * @param {string | number} amount Сумма * @return {this} */ setAmount(amount: number | string): this; /** * Задаёт сумму платежа * * @alias {@link setAmount} * @param {string | number} amount Сумма * @return {this} */ setSum(amount: number | string): this; /** * Задаёт получателя платежа * * @param {string | number} receiver Получатель * @return {this} */ setReceiver(receiver: number | string): this; /** * Задаёт URL перенаправления после успешного платежа * * @param {string | URL} url URL * @return {this} */ setSuccessURL(url: string | URL): this; readonly setQuickPayForm: (value: AutoComplete<"button"> | undefined) => this; readonly setPaymentType: (value: AutoComplete<PaymentType> | undefined) => this; readonly setLabel: (value: string | undefined) => this; /** @deprecated **Поле игнорируется ЮMoney** */ readonly setTargets: (value: string | undefined) => this; /** @deprecated **Поле игнорируется ЮMoney** */ readonly setFormComment: (value: string | undefined) => this; /** @deprecated **Поле игнорируется ЮMoney** */ readonly setShortDest: (value: string | undefined) => this; /** @deprecated **Поле игнорируется ЮMoney** */ readonly setComment: (value: string | undefined) => this; /** * @deprecated **Поле игнорируется ЮMoney** * * @param {boolean} [doRequire=true] * @return {this} */ requireFio(doRequire?: boolean): this; /** * @deprecated **Поле игнорируется ЮMoney** * * @param {boolean} [doRequire=true] * @return {this} */ requireAddress(doRequire?: boolean): this; /** * @deprecated **Поле игнорируется ЮMoney** * * @param {boolean} [doRequire=true] * @return {this} */ requireEmail(doRequire?: boolean): this; /** * @deprecated **Поле игнорируется ЮMoney** * * @param {boolean} [doRequire=true] * @return {this} */ requirePhone(doRequire?: boolean): this; /** * Генерирует HTML на основе заданных параметров * @param {boolean} [fullPage=false] * @return {string} */ buildHtml(fullPage?: boolean): string; }