nestjs-yookassa
Version:
A NestJS library for integrating with YooKassa API
97 lines (96 loc) • 3.48 kB
TypeScript
import type { LocaleEnum } from '../../../../common/enums';
import type { ConfirmationEnum } from '../../enums';
/**
* Тип подтверждения, который может быть одним из нескольких типов.
* @type {ConfirmationRedirect | ConfirmationEmbedded | ConfirmationQR | ConfirmationExternal | ConfirmationMobileApp}
*/
export type ConfirmationRequest = ConfirmationEmbedded | ConfirmationExternal | ConfirmationMobileApp | ConfirmationQR | ConfirmationRedirect;
/**
* Тип для подтверждения через встроенную форму.
* Используется при встроенном подтверждении внутри текущего приложения.
*/
export interface ConfirmationEmbedded {
/**
* Тип подтверждения — встроенная форма.
*/
type: ConfirmationEnum.EMBEDDED;
/**
* Локализация, которая должна быть использована.
* Необязательное поле.
*/
locale?: LocaleEnum;
}
/**
* Тип для подтверждения через внешний источник.
*/
export interface ConfirmationExternal {
/**
* Тип подтверждения — внешний источник.
*/
type: ConfirmationEnum.EXTERNAL;
/**
* Локализация, которая должна быть использована.
* Необязательное поле.
*/
locale?: LocaleEnum;
}
/**
* Тип для подтверждения через мобильное приложение.
*/
export interface ConfirmationMobileApp {
/**
* Тип подтверждения — мобильное приложение.
*/
type: ConfirmationEnum.MOBILE_APPLICATION;
/**
* Локализация, которая должна быть использована.
* Необязательное поле.
*/
locale?: LocaleEnum;
/**
* URL возврата после подтверждения.
*/
return_url: string;
}
/**
* Тип для подтверждения через QR код.
*/
export interface ConfirmationQR {
/**
* Тип подтверждения — QR код.
*/
type: ConfirmationEnum.QR_CODE;
/**
* Локализация, которая должна быть использована.
* Необязательное поле.
*/
locale?: LocaleEnum;
/**
* URL возврата после подтверждения.
*/
return_url: string;
}
/**
* Тип для подтверждения через редирект.
* Используется при необходимости перенаправить пользователя на внешний URL для подтверждения.
*/
export interface ConfirmationRedirect {
/**
* Тип подтверждения — редирект.
*/
type: ConfirmationEnum.REDIRECT;
/**
* Принудительное подтверждение.
* Необязательное поле.
*/
enforce?: boolean;
/**
* Локализация, которая должна быть использована.
* Необязательное поле.
*/
locale?: LocaleEnum;
/**
* URL возврата после подтверждения.
*/
return_url: string;
}