/**
 * This file was automatically generated by joi-to-typescript
 * Do not modify this file manually
 */

export interface IBankAccount {
  account_number: string;
  bank_name: string;
  card_number?: string;
  currency: string;
  details: {
    bik: string;
    corr: string;
    kpp: string;
  };
}

export interface IDeletePaymentMethod {
  method_id: number;
}

export interface ISavePaymentMethod {
  data:
    | {
        phone: string;
      }
    | {
        account_number: string;
        bank_name: string;
        card_number?: string;
        currency: string;
        details: {
          bik: string;
          corr: string;
          kpp: string;
        };
      };
  method_id: number;
  method_type: 'sbp' | 'bank_transfer';
  username: string;
}

export interface ISbpDetails {
  phone: string;
}

export interface RDeletePaymentMethod {
  body: {
    method_id: number;
  };
  params?: {
    username: string;
  };
}

export interface RGetListPaymentMethods {
  params?: {
    username?: string;
  };
}

export interface RSavePaymentMethod {
  body: {
    data:
      | {
          phone: string;
        }
      | {
          account_number: string;
          bank_name: string;
          card_number?: string;
          currency: string;
          details: {
            bik: string;
            corr: string;
            kpp: string;
          };
        };
    method_id: number;
    method_type: 'sbp' | 'bank_transfer';
    username: string;
  };
  params?: {
    username: string;
  };
}
