/* tslint:disable */
/* eslint-disable */
/**
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

// May contain unused imports in some cases
// @ts-ignore
import { AddressBookRecipientMetadata } from "./address-book-recipient-metadata";
// May contain unused imports in some cases
// @ts-ignore
import { Chain } from "./chain";

/**
 *
 * @export
 * @interface AddressBookRecipient
 */
export interface AddressBookRecipient {
  /**
   * Unique system generated identifier for the entity.
   * @type {string}
   * @memberof AddressBookRecipient
   */
  id?: string;
  /**
   *
   * @type {Chain}
   * @memberof AddressBookRecipient
   */
  chain: Chain;
  /**
   * An alphanumeric string representing a blockchain address. Will be in different formats for different chains. It is important to preserve the exact formatting and capitalization of the address.
   * @type {string}
   * @memberof AddressBookRecipient
   */
  address: string;
  /**
   * The secondary identifier for a blockchain address. An example of this is the memo field on the Stellar network, which can be text, id, or hash format.
   * @type {string}
   * @memberof AddressBookRecipient
   */
  addressTag?: string | null;
  /**
   *
   * @type {AddressBookRecipientMetadata}
   * @memberof AddressBookRecipient
   */
  metadata: AddressBookRecipientMetadata;
  /**
   * Status of the address book recipient.
   * @type {string}
   * @memberof AddressBookRecipient
   */
  status?: AddressBookRecipientStatusEnum;
  /**
   * ISO-8601 UTC date/time format.
   * @type {string}
   * @memberof AddressBookRecipient
   */
  createDate?: string;
  /**
   * ISO-8601 UTC date/time format.
   * @type {string}
   * @memberof AddressBookRecipient
   */
  updateDate?: string;
}

export const AddressBookRecipientStatusEnum = {
  Pending: "pending",
  Inactive: "inactive",
  Active: "active",
  Denied: "denied"
} as const;

export type AddressBookRecipientStatusEnum =
  typeof AddressBookRecipientStatusEnum[keyof typeof AddressBookRecipientStatusEnum];
