/**
 * Fireblocks API
 * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain.  - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com)
 *
 * The version of the OpenAPI document: 1.6.2
 * Contact: developers@fireblocks.com
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import { SmartTransferTicketTerm } from './smart-transfer-ticket-term';
/**
 * Data object with result data
 * @export
 * @interface SmartTransferTicket
 */
export interface SmartTransferTicket {
    /**
     * Unique id of Smart Transfer ticket
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'id': string;
    /**
     * Kind of Smart Transfer. Can be either `ASYNC` or `DVP`
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'type': SmartTransferTicketTypeEnum;
    /**
     * Current status of Smart Transfer ticket
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'status': SmartTransferTicketStatusEnum;
    /**
     * ID of network profile that created ticket
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'createdByNetworkId': string;
    /**
     * Name of network profile that created ticket
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'createdByNetworkIdName': string;
    /**
     * Date and time at which the ticket is created.
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'createdAt': string;
    /**
     * Date and time of last ticket update.
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'updatedAt': string;
    /**
     * Direction of Smart Transfer.
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'direction'?: SmartTransferTicketDirectionEnum;
    /**
     * Current status of DVP execution
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'dvpExecutionStatus'?: SmartTransferTicketDvpExecutionStatusEnum;
    /**
     * ID of network profile that created order
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'orderCreatedByNetworkId'?: string;
    /**
     * Ticket terms (legs)
     * @type {Array<SmartTransferTicketTerm>}
     * @memberof SmartTransferTicket
     */
    'terms'?: Array<SmartTransferTicketTerm>;
    /**
     * Number of hours for expiration.This data is valid only it ticket not in DRAFT state and it will be used to calculate expiresAt value
     * @type {number}
     * @memberof SmartTransferTicket
     */
    'expiresIn'?: number;
    /**
     * Date and time at which the ticket will expire if no funding is performed.
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'expiresAt'?: string;
    /**
     * Date and time when ticket is submitted.
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'submittedAt'?: string;
    /**
     * Date and time when ticket is expired.
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'expiredAt'?: string;
    /**
     * Date and time when ticket is canceled.
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'canceledAt'?: string;
    /**
     * Date and time when ticket is fulfilled.
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'fulfilledAt'?: string;
    /**
     * External Ref ID for Smart Transfer ticket.
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'externalRefId'?: string;
    /**
     * Note
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'note'?: string;
    /**
     * Name of network profile that canceled ticket
     * @type {string}
     * @memberof SmartTransferTicket
     */
    'canceledByNetworkIdName'?: string;
    /**
     *
     * @type {boolean}
     * @memberof SmartTransferTicket
     */
    'canceledByMe'?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof SmartTransferTicket
     */
    'createdByMe'?: boolean;
}
export declare const SmartTransferTicketTypeEnum: {
    readonly Async: "ASYNC";
    readonly Dvp: "DVP";
};
export type SmartTransferTicketTypeEnum = typeof SmartTransferTicketTypeEnum[keyof typeof SmartTransferTicketTypeEnum];
export declare const SmartTransferTicketStatusEnum: {
    readonly Draft: "DRAFT";
    readonly PendingApproval: "PENDING_APPROVAL";
    readonly Open: "OPEN";
    readonly InSettlement: "IN_SETTLEMENT";
    readonly Fulfilled: "FULFILLED";
    readonly Expired: "EXPIRED";
    readonly Canceled: "CANCELED";
};
export type SmartTransferTicketStatusEnum = typeof SmartTransferTicketStatusEnum[keyof typeof SmartTransferTicketStatusEnum];
export declare const SmartTransferTicketDirectionEnum: {
    readonly Exchange: "EXCHANGE";
    readonly Send: "SEND";
    readonly Receive: "RECEIVE";
    readonly Intermediate: "INTERMEDIATE";
};
export type SmartTransferTicketDirectionEnum = typeof SmartTransferTicketDirectionEnum[keyof typeof SmartTransferTicketDirectionEnum];
export declare const SmartTransferTicketDvpExecutionStatusEnum: {
    readonly Started: "STARTED";
    readonly CreatingOrder: "CREATING_ORDER";
    readonly OrderCreated: "ORDER_CREATED";
    readonly Fulfilling: "FULFILLING";
    readonly FulfillingOrderFailed: "FULFILLING_ORDER_FAILED";
    readonly CreatingOrderFailed: "CREATING_ORDER_FAILED";
    readonly Fulfilled: "FULFILLED";
};
export type SmartTransferTicketDvpExecutionStatusEnum = typeof SmartTransferTicketDvpExecutionStatusEnum[keyof typeof SmartTransferTicketDvpExecutionStatusEnum];
