/**
 * 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 type { Configuration } from '../configuration';
import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios';
import { RequestArgs, BaseAPI } from '../base';
import { SmartTransferApproveTerm } from '../models';
import { SmartTransferCreateTicket } from '../models';
import { SmartTransferCreateTicketTerm } from '../models';
import { SmartTransferFundDvpTicket } from '../models';
import { SmartTransferFundTerm } from '../models';
import { SmartTransferManuallyFundTerm } from '../models';
import { SmartTransferSetTicketExpiration } from '../models';
import { SmartTransferSetTicketExternalId } from '../models';
import { SmartTransferSetUserGroups } from '../models';
import { SmartTransferStatistic } from '../models';
import { SmartTransferSubmitTicket } from '../models';
import { SmartTransferTicketFilteredResponse } from '../models';
import { SmartTransferTicketResponse } from '../models';
import { SmartTransferTicketTermResponse } from '../models';
import { SmartTransferUpdateTicketTerm } from '../models';
import { SmartTransferUserGroupsResponse } from '../models';
/**
 * SmartTransferApi - axios parameter creator
 * @export
 */
export declare const SmartTransferApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     * Set funding source for ticket term and creating approving transaction for contract to transfer asset
     * @summary Set funding source and approval
     * @param {SmartTransferApproveTerm} smartTransferApproveTerm
     * @param {string} ticketId
     * @param {string} termId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    approveDvPTicketTerm: (smartTransferApproveTerm: SmartTransferApproveTerm, ticketId: string, termId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Cancel Smart Transfer ticket. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Cancel Ticket
     * @param {string} ticketId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    cancelTicket: (ticketId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Creates a new Smart Transfer ticket. Learn more about Fireblocks Smart Transfers [here](https://developers.fireblocks.com/docs/execute-smart-transfers).  **Note:** The `DVP` value is in Early Access and should only be used if Fireblocks has enabled it in your workspace. Contact your Customer Success Manager for more information.  **Endpoint Permissions:** Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Create Ticket
     * @param {SmartTransferCreateTicket} smartTransferCreateTicket
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createTicket: (smartTransferCreateTicket: SmartTransferCreateTicket, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Creates new smart transfer ticket term (when the ticket status is DRAFT). Learn more about Fireblocks Smart Transfers in the following [guide](https://developers.fireblocks.com/docs/execute-smart-transfers). Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Create leg (term)
     * @param {SmartTransferCreateTicketTerm} smartTransferCreateTicketTerm
     * @param {string} ticketId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createTicketTerm: (smartTransferCreateTicketTerm: SmartTransferCreateTicketTerm, ticketId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Find Smart Transfer ticket by id. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
     * @summary Search Ticket by ID
     * @param {string} ticketId
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    findTicketById: (ticketId: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Find a specific term of a specific Smart Transfer ticket. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
     * @summary Get Smart Transfer ticket term
     * @param {string} ticketId
     * @param {string} termId
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    findTicketTermById: (ticketId: string, termId: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Manually fulfill ticket, in case when all terms (legs) are funded manually. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Fund ticket manually
     * @param {string} ticketId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    fulfillTicket: (ticketId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Create or fulfill dvp ticket order
     * @summary Fund dvp ticket
     * @param {SmartTransferFundDvpTicket} smartTransferFundDvpTicket
     * @param {string} ticketId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    fundDvpTicket: (smartTransferFundDvpTicket: SmartTransferFundDvpTicket, ticketId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Set funding source for ticket term (in case of ASYNC tickets, this will execute transfer immediately). Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Define funding source
     * @param {SmartTransferFundTerm} smartTransferFundTerm
     * @param {string} ticketId
     * @param {string} termId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    fundTicketTerm: (smartTransferFundTerm: SmartTransferFundTerm, ticketId: string, termId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Get smart transfer statistic
     * @summary Get smart transfers statistic
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getSmartTransferStatistic: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Get Smart Transfer user groups. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
     * @summary Get user group
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getSmartTransferUserGroups: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Manually set ticket term transaction. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Manually add term transaction
     * @param {SmartTransferManuallyFundTerm} smartTransferManuallyFundTerm
     * @param {string} ticketId
     * @param {string} termId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    manuallyFundTicketTerm: (smartTransferManuallyFundTerm: SmartTransferManuallyFundTerm, ticketId: string, termId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Delete ticket term when ticket is in DRAFT status
     * @summary Delete ticket leg (term)
     * @param {string} ticketId
     * @param {string} termId
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    removeTicketTerm: (ticketId: string, termId: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Find tickets by their title or ticker. You can also query all tickets without filters by not providing any input parameters. **Endpoint Permissions:** Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
     * @summary Find Ticket
     * @param {string} [q] Search string - counterparty name or asset or ticketId. Optional
     * @param {Array<SearchTicketsStatusesEnum>} [statuses] Ticket statuses for Smart Transfer tickets. Optional
     * @param {string} [networkId] NetworkId that is used in the ticket . Optional
     * @param {boolean} [createdByMe] Filter created tickets by created by self or by others. Optional
     * @param {string} [expiresAfter] Lower bound of search range. Optional
     * @param {string} [expiresBefore] Upper bound of search range. Optional
     * @param {SearchTicketsTypeEnum} [type] Type of transfer. ASYNC executes transfers as they are funded, DVP executes all terms (legs) as one dvp transfer
     * @param {string} [externalRefId] External ref. ID that workspace can use to identify ticket outside of Fireblocks system.
     * @param {string} [after] ID of the record after which to fetch $limit records
     * @param {number} [limit] Number of records to fetch. By default, it is 100
     * @param {SearchTicketsSortByEnum} [sortBy] Sort by field
     * @param {SearchTicketsOrderEnum} [order] ASC / DESC ordering (default DESC)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    searchTickets: (q?: string, statuses?: Array<SearchTicketsStatusesEnum>, networkId?: string, createdByMe?: boolean, expiresAfter?: string, expiresBefore?: string, type?: SearchTicketsTypeEnum, externalRefId?: string, after?: string, limit?: number, sortBy?: SearchTicketsSortByEnum, order?: SearchTicketsOrderEnum, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Set external id Smart Transfer ticket. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Add external ref. ID
     * @param {SmartTransferSetTicketExternalId} smartTransferSetTicketExternalId
     * @param {string} ticketId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    setExternalRefId: (smartTransferSetTicketExternalId: SmartTransferSetTicketExternalId, ticketId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Set expiration date on Smart Transfer ticket. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Set expiration
     * @param {SmartTransferSetTicketExpiration} smartTransferSetTicketExpiration
     * @param {string} ticketId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    setTicketExpiration: (smartTransferSetTicketExpiration: SmartTransferSetTicketExpiration, ticketId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Set Smart Transfers user group to receive email notifications for Smart Transfers. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Set user group
     * @param {SmartTransferSetUserGroups} smartTransferSetUserGroups
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    setUserGroups: (smartTransferSetUserGroups: SmartTransferSetUserGroups, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Submit Smart Transfer ticket - change status into ready for approval if auto approval is not turned on, or OPEN if auto approval is on. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Submit ticket
     * @param {SmartTransferSubmitTicket} smartTransferSubmitTicket
     * @param {string} ticketId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    submitTicket: (smartTransferSubmitTicket: SmartTransferSubmitTicket, ticketId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Update ticket term (when ticket status is DRAFT)
     * @summary Update ticket leg (term)
     * @param {SmartTransferUpdateTicketTerm} smartTransferUpdateTicketTerm
     * @param {string} ticketId
     * @param {string} termId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateTicketTerm: (smartTransferUpdateTicketTerm: SmartTransferUpdateTicketTerm, ticketId: string, termId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
};
/**
 * SmartTransferApi - functional programming interface
 * @export
 */
export declare const SmartTransferApiFp: (configuration?: Configuration) => {
    /**
     * Set funding source for ticket term and creating approving transaction for contract to transfer asset
     * @summary Set funding source and approval
     * @param {SmartTransferApproveTerm} smartTransferApproveTerm
     * @param {string} ticketId
     * @param {string} termId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    approveDvPTicketTerm(smartTransferApproveTerm: SmartTransferApproveTerm, ticketId: string, termId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferTicketTermResponse>>;
    /**
     * Cancel Smart Transfer ticket. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Cancel Ticket
     * @param {string} ticketId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    cancelTicket(ticketId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferTicketResponse>>;
    /**
     * Creates a new Smart Transfer ticket. Learn more about Fireblocks Smart Transfers [here](https://developers.fireblocks.com/docs/execute-smart-transfers).  **Note:** The `DVP` value is in Early Access and should only be used if Fireblocks has enabled it in your workspace. Contact your Customer Success Manager for more information.  **Endpoint Permissions:** Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Create Ticket
     * @param {SmartTransferCreateTicket} smartTransferCreateTicket
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createTicket(smartTransferCreateTicket: SmartTransferCreateTicket, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferTicketResponse>>;
    /**
     * Creates new smart transfer ticket term (when the ticket status is DRAFT). Learn more about Fireblocks Smart Transfers in the following [guide](https://developers.fireblocks.com/docs/execute-smart-transfers). Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Create leg (term)
     * @param {SmartTransferCreateTicketTerm} smartTransferCreateTicketTerm
     * @param {string} ticketId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createTicketTerm(smartTransferCreateTicketTerm: SmartTransferCreateTicketTerm, ticketId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferTicketTermResponse>>;
    /**
     * Find Smart Transfer ticket by id. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
     * @summary Search Ticket by ID
     * @param {string} ticketId
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    findTicketById(ticketId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferTicketResponse>>;
    /**
     * Find a specific term of a specific Smart Transfer ticket. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
     * @summary Get Smart Transfer ticket term
     * @param {string} ticketId
     * @param {string} termId
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    findTicketTermById(ticketId: string, termId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferTicketTermResponse>>;
    /**
     * Manually fulfill ticket, in case when all terms (legs) are funded manually. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Fund ticket manually
     * @param {string} ticketId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    fulfillTicket(ticketId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferTicketResponse>>;
    /**
     * Create or fulfill dvp ticket order
     * @summary Fund dvp ticket
     * @param {SmartTransferFundDvpTicket} smartTransferFundDvpTicket
     * @param {string} ticketId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    fundDvpTicket(smartTransferFundDvpTicket: SmartTransferFundDvpTicket, ticketId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferTicketResponse>>;
    /**
     * Set funding source for ticket term (in case of ASYNC tickets, this will execute transfer immediately). Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Define funding source
     * @param {SmartTransferFundTerm} smartTransferFundTerm
     * @param {string} ticketId
     * @param {string} termId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    fundTicketTerm(smartTransferFundTerm: SmartTransferFundTerm, ticketId: string, termId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferTicketTermResponse>>;
    /**
     * Get smart transfer statistic
     * @summary Get smart transfers statistic
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getSmartTransferStatistic(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferStatistic>>;
    /**
     * Get Smart Transfer user groups. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
     * @summary Get user group
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getSmartTransferUserGroups(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferUserGroupsResponse>>;
    /**
     * Manually set ticket term transaction. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Manually add term transaction
     * @param {SmartTransferManuallyFundTerm} smartTransferManuallyFundTerm
     * @param {string} ticketId
     * @param {string} termId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    manuallyFundTicketTerm(smartTransferManuallyFundTerm: SmartTransferManuallyFundTerm, ticketId: string, termId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferTicketTermResponse>>;
    /**
     * Delete ticket term when ticket is in DRAFT status
     * @summary Delete ticket leg (term)
     * @param {string} ticketId
     * @param {string} termId
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    removeTicketTerm(ticketId: string, termId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * Find tickets by their title or ticker. You can also query all tickets without filters by not providing any input parameters. **Endpoint Permissions:** Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
     * @summary Find Ticket
     * @param {string} [q] Search string - counterparty name or asset or ticketId. Optional
     * @param {Array<SearchTicketsStatusesEnum>} [statuses] Ticket statuses for Smart Transfer tickets. Optional
     * @param {string} [networkId] NetworkId that is used in the ticket . Optional
     * @param {boolean} [createdByMe] Filter created tickets by created by self or by others. Optional
     * @param {string} [expiresAfter] Lower bound of search range. Optional
     * @param {string} [expiresBefore] Upper bound of search range. Optional
     * @param {SearchTicketsTypeEnum} [type] Type of transfer. ASYNC executes transfers as they are funded, DVP executes all terms (legs) as one dvp transfer
     * @param {string} [externalRefId] External ref. ID that workspace can use to identify ticket outside of Fireblocks system.
     * @param {string} [after] ID of the record after which to fetch $limit records
     * @param {number} [limit] Number of records to fetch. By default, it is 100
     * @param {SearchTicketsSortByEnum} [sortBy] Sort by field
     * @param {SearchTicketsOrderEnum} [order] ASC / DESC ordering (default DESC)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    searchTickets(q?: string, statuses?: Array<SearchTicketsStatusesEnum>, networkId?: string, createdByMe?: boolean, expiresAfter?: string, expiresBefore?: string, type?: SearchTicketsTypeEnum, externalRefId?: string, after?: string, limit?: number, sortBy?: SearchTicketsSortByEnum, order?: SearchTicketsOrderEnum, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferTicketFilteredResponse>>;
    /**
     * Set external id Smart Transfer ticket. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Add external ref. ID
     * @param {SmartTransferSetTicketExternalId} smartTransferSetTicketExternalId
     * @param {string} ticketId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    setExternalRefId(smartTransferSetTicketExternalId: SmartTransferSetTicketExternalId, ticketId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferTicketResponse>>;
    /**
     * Set expiration date on Smart Transfer ticket. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Set expiration
     * @param {SmartTransferSetTicketExpiration} smartTransferSetTicketExpiration
     * @param {string} ticketId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    setTicketExpiration(smartTransferSetTicketExpiration: SmartTransferSetTicketExpiration, ticketId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferTicketResponse>>;
    /**
     * Set Smart Transfers user group to receive email notifications for Smart Transfers. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Set user group
     * @param {SmartTransferSetUserGroups} smartTransferSetUserGroups
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    setUserGroups(smartTransferSetUserGroups: SmartTransferSetUserGroups, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferUserGroupsResponse>>;
    /**
     * Submit Smart Transfer ticket - change status into ready for approval if auto approval is not turned on, or OPEN if auto approval is on. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Submit ticket
     * @param {SmartTransferSubmitTicket} smartTransferSubmitTicket
     * @param {string} ticketId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    submitTicket(smartTransferSubmitTicket: SmartTransferSubmitTicket, ticketId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferTicketResponse>>;
    /**
     * Update ticket term (when ticket status is DRAFT)
     * @summary Update ticket leg (term)
     * @param {SmartTransferUpdateTicketTerm} smartTransferUpdateTicketTerm
     * @param {string} ticketId
     * @param {string} termId
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateTicketTerm(smartTransferUpdateTicketTerm: SmartTransferUpdateTicketTerm, ticketId: string, termId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SmartTransferTicketTermResponse>>;
};
/**
 * SmartTransferApi - factory interface
 * @export
 */
export declare const SmartTransferApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     * Set funding source for ticket term and creating approving transaction for contract to transfer asset
     * @summary Set funding source and approval
     * @param {SmartTransferApiApproveDvPTicketTermRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    approveDvPTicketTerm(requestParameters: SmartTransferApiApproveDvPTicketTermRequest, options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferTicketTermResponse>;
    /**
     * Cancel Smart Transfer ticket. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Cancel Ticket
     * @param {SmartTransferApiCancelTicketRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    cancelTicket(requestParameters: SmartTransferApiCancelTicketRequest, options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferTicketResponse>;
    /**
     * Creates a new Smart Transfer ticket. Learn more about Fireblocks Smart Transfers [here](https://developers.fireblocks.com/docs/execute-smart-transfers).  **Note:** The `DVP` value is in Early Access and should only be used if Fireblocks has enabled it in your workspace. Contact your Customer Success Manager for more information.  **Endpoint Permissions:** Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Create Ticket
     * @param {SmartTransferApiCreateTicketRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createTicket(requestParameters: SmartTransferApiCreateTicketRequest, options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferTicketResponse>;
    /**
     * Creates new smart transfer ticket term (when the ticket status is DRAFT). Learn more about Fireblocks Smart Transfers in the following [guide](https://developers.fireblocks.com/docs/execute-smart-transfers). Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Create leg (term)
     * @param {SmartTransferApiCreateTicketTermRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createTicketTerm(requestParameters: SmartTransferApiCreateTicketTermRequest, options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferTicketTermResponse>;
    /**
     * Find Smart Transfer ticket by id. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
     * @summary Search Ticket by ID
     * @param {SmartTransferApiFindTicketByIdRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    findTicketById(requestParameters: SmartTransferApiFindTicketByIdRequest, options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferTicketResponse>;
    /**
     * Find a specific term of a specific Smart Transfer ticket. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
     * @summary Get Smart Transfer ticket term
     * @param {SmartTransferApiFindTicketTermByIdRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    findTicketTermById(requestParameters: SmartTransferApiFindTicketTermByIdRequest, options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferTicketTermResponse>;
    /**
     * Manually fulfill ticket, in case when all terms (legs) are funded manually. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Fund ticket manually
     * @param {SmartTransferApiFulfillTicketRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    fulfillTicket(requestParameters: SmartTransferApiFulfillTicketRequest, options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferTicketResponse>;
    /**
     * Create or fulfill dvp ticket order
     * @summary Fund dvp ticket
     * @param {SmartTransferApiFundDvpTicketRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    fundDvpTicket(requestParameters: SmartTransferApiFundDvpTicketRequest, options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferTicketResponse>;
    /**
     * Set funding source for ticket term (in case of ASYNC tickets, this will execute transfer immediately). Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Define funding source
     * @param {SmartTransferApiFundTicketTermRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    fundTicketTerm(requestParameters: SmartTransferApiFundTicketTermRequest, options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferTicketTermResponse>;
    /**
     * Get smart transfer statistic
     * @summary Get smart transfers statistic
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getSmartTransferStatistic(options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferStatistic>;
    /**
     * Get Smart Transfer user groups. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
     * @summary Get user group
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getSmartTransferUserGroups(options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferUserGroupsResponse>;
    /**
     * Manually set ticket term transaction. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Manually add term transaction
     * @param {SmartTransferApiManuallyFundTicketTermRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    manuallyFundTicketTerm(requestParameters: SmartTransferApiManuallyFundTicketTermRequest, options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferTicketTermResponse>;
    /**
     * Delete ticket term when ticket is in DRAFT status
     * @summary Delete ticket leg (term)
     * @param {SmartTransferApiRemoveTicketTermRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    removeTicketTerm(requestParameters: SmartTransferApiRemoveTicketTermRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Find tickets by their title or ticker. You can also query all tickets without filters by not providing any input parameters. **Endpoint Permissions:** Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
     * @summary Find Ticket
     * @param {SmartTransferApiSearchTicketsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    searchTickets(requestParameters?: SmartTransferApiSearchTicketsRequest, options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferTicketFilteredResponse>;
    /**
     * Set external id Smart Transfer ticket. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Add external ref. ID
     * @param {SmartTransferApiSetExternalRefIdRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    setExternalRefId(requestParameters: SmartTransferApiSetExternalRefIdRequest, options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferTicketResponse>;
    /**
     * Set expiration date on Smart Transfer ticket. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Set expiration
     * @param {SmartTransferApiSetTicketExpirationRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    setTicketExpiration(requestParameters: SmartTransferApiSetTicketExpirationRequest, options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferTicketResponse>;
    /**
     * Set Smart Transfers user group to receive email notifications for Smart Transfers. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Set user group
     * @param {SmartTransferApiSetUserGroupsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    setUserGroups(requestParameters: SmartTransferApiSetUserGroupsRequest, options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferUserGroupsResponse>;
    /**
     * Submit Smart Transfer ticket - change status into ready for approval if auto approval is not turned on, or OPEN if auto approval is on. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Submit ticket
     * @param {SmartTransferApiSubmitTicketRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    submitTicket(requestParameters: SmartTransferApiSubmitTicketRequest, options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferTicketResponse>;
    /**
     * Update ticket term (when ticket status is DRAFT)
     * @summary Update ticket leg (term)
     * @param {SmartTransferApiUpdateTicketTermRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateTicketTerm(requestParameters: SmartTransferApiUpdateTicketTermRequest, options?: RawAxiosRequestConfig): AxiosPromise<SmartTransferTicketTermResponse>;
};
/**
 * Request parameters for approveDvPTicketTerm operation in SmartTransferApi.
 * @export
 * @interface SmartTransferApiApproveDvPTicketTermRequest
 */
export interface SmartTransferApiApproveDvPTicketTermRequest {
    /**
     *
     * @type {SmartTransferApproveTerm}
     * @memberof SmartTransferApiApproveDvPTicketTerm
     */
    readonly smartTransferApproveTerm: SmartTransferApproveTerm;
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiApproveDvPTicketTerm
     */
    readonly ticketId: string;
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiApproveDvPTicketTerm
     */
    readonly termId: string;
    /**
     * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @type {string}
     * @memberof SmartTransferApiApproveDvPTicketTerm
     */
    readonly idempotencyKey?: string;
}
/**
 * Request parameters for cancelTicket operation in SmartTransferApi.
 * @export
 * @interface SmartTransferApiCancelTicketRequest
 */
export interface SmartTransferApiCancelTicketRequest {
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiCancelTicket
     */
    readonly ticketId: string;
    /**
     * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @type {string}
     * @memberof SmartTransferApiCancelTicket
     */
    readonly idempotencyKey?: string;
}
/**
 * Request parameters for createTicket operation in SmartTransferApi.
 * @export
 * @interface SmartTransferApiCreateTicketRequest
 */
export interface SmartTransferApiCreateTicketRequest {
    /**
     *
     * @type {SmartTransferCreateTicket}
     * @memberof SmartTransferApiCreateTicket
     */
    readonly smartTransferCreateTicket: SmartTransferCreateTicket;
    /**
     * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @type {string}
     * @memberof SmartTransferApiCreateTicket
     */
    readonly idempotencyKey?: string;
}
/**
 * Request parameters for createTicketTerm operation in SmartTransferApi.
 * @export
 * @interface SmartTransferApiCreateTicketTermRequest
 */
export interface SmartTransferApiCreateTicketTermRequest {
    /**
     *
     * @type {SmartTransferCreateTicketTerm}
     * @memberof SmartTransferApiCreateTicketTerm
     */
    readonly smartTransferCreateTicketTerm: SmartTransferCreateTicketTerm;
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiCreateTicketTerm
     */
    readonly ticketId: string;
    /**
     * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @type {string}
     * @memberof SmartTransferApiCreateTicketTerm
     */
    readonly idempotencyKey?: string;
}
/**
 * Request parameters for findTicketById operation in SmartTransferApi.
 * @export
 * @interface SmartTransferApiFindTicketByIdRequest
 */
export interface SmartTransferApiFindTicketByIdRequest {
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiFindTicketById
     */
    readonly ticketId: string;
}
/**
 * Request parameters for findTicketTermById operation in SmartTransferApi.
 * @export
 * @interface SmartTransferApiFindTicketTermByIdRequest
 */
export interface SmartTransferApiFindTicketTermByIdRequest {
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiFindTicketTermById
     */
    readonly ticketId: string;
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiFindTicketTermById
     */
    readonly termId: string;
}
/**
 * Request parameters for fulfillTicket operation in SmartTransferApi.
 * @export
 * @interface SmartTransferApiFulfillTicketRequest
 */
export interface SmartTransferApiFulfillTicketRequest {
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiFulfillTicket
     */
    readonly ticketId: string;
    /**
     * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @type {string}
     * @memberof SmartTransferApiFulfillTicket
     */
    readonly idempotencyKey?: string;
}
/**
 * Request parameters for fundDvpTicket operation in SmartTransferApi.
 * @export
 * @interface SmartTransferApiFundDvpTicketRequest
 */
export interface SmartTransferApiFundDvpTicketRequest {
    /**
     *
     * @type {SmartTransferFundDvpTicket}
     * @memberof SmartTransferApiFundDvpTicket
     */
    readonly smartTransferFundDvpTicket: SmartTransferFundDvpTicket;
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiFundDvpTicket
     */
    readonly ticketId: string;
    /**
     * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @type {string}
     * @memberof SmartTransferApiFundDvpTicket
     */
    readonly idempotencyKey?: string;
}
/**
 * Request parameters for fundTicketTerm operation in SmartTransferApi.
 * @export
 * @interface SmartTransferApiFundTicketTermRequest
 */
export interface SmartTransferApiFundTicketTermRequest {
    /**
     *
     * @type {SmartTransferFundTerm}
     * @memberof SmartTransferApiFundTicketTerm
     */
    readonly smartTransferFundTerm: SmartTransferFundTerm;
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiFundTicketTerm
     */
    readonly ticketId: string;
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiFundTicketTerm
     */
    readonly termId: string;
    /**
     * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @type {string}
     * @memberof SmartTransferApiFundTicketTerm
     */
    readonly idempotencyKey?: string;
}
/**
 * Request parameters for manuallyFundTicketTerm operation in SmartTransferApi.
 * @export
 * @interface SmartTransferApiManuallyFundTicketTermRequest
 */
export interface SmartTransferApiManuallyFundTicketTermRequest {
    /**
     *
     * @type {SmartTransferManuallyFundTerm}
     * @memberof SmartTransferApiManuallyFundTicketTerm
     */
    readonly smartTransferManuallyFundTerm: SmartTransferManuallyFundTerm;
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiManuallyFundTicketTerm
     */
    readonly ticketId: string;
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiManuallyFundTicketTerm
     */
    readonly termId: string;
    /**
     * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @type {string}
     * @memberof SmartTransferApiManuallyFundTicketTerm
     */
    readonly idempotencyKey?: string;
}
/**
 * Request parameters for removeTicketTerm operation in SmartTransferApi.
 * @export
 * @interface SmartTransferApiRemoveTicketTermRequest
 */
export interface SmartTransferApiRemoveTicketTermRequest {
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiRemoveTicketTerm
     */
    readonly ticketId: string;
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiRemoveTicketTerm
     */
    readonly termId: string;
}
/**
 * Request parameters for searchTickets operation in SmartTransferApi.
 * @export
 * @interface SmartTransferApiSearchTicketsRequest
 */
export interface SmartTransferApiSearchTicketsRequest {
    /**
     * Search string - counterparty name or asset or ticketId. Optional
     * @type {string}
     * @memberof SmartTransferApiSearchTickets
     */
    readonly q?: string;
    /**
     * Ticket statuses for Smart Transfer tickets. Optional
     * @type {Array<'DRAFT' | 'PENDING_APPROVAL' | 'OPEN' | 'IN_SETTLEMENT' | 'FULFILLED' | 'EXPIRED' | 'CANCELED'>}
     * @memberof SmartTransferApiSearchTickets
     */
    readonly statuses?: Array<SearchTicketsStatusesEnum>;
    /**
     * NetworkId that is used in the ticket . Optional
     * @type {string}
     * @memberof SmartTransferApiSearchTickets
     */
    readonly networkId?: string;
    /**
     * Filter created tickets by created by self or by others. Optional
     * @type {boolean}
     * @memberof SmartTransferApiSearchTickets
     */
    readonly createdByMe?: boolean;
    /**
     * Lower bound of search range. Optional
     * @type {string}
     * @memberof SmartTransferApiSearchTickets
     */
    readonly expiresAfter?: string;
    /**
     * Upper bound of search range. Optional
     * @type {string}
     * @memberof SmartTransferApiSearchTickets
     */
    readonly expiresBefore?: string;
    /**
     * Type of transfer. ASYNC executes transfers as they are funded, DVP executes all terms (legs) as one dvp transfer
     * @type {'ASYNC' | 'DVP'}
     * @memberof SmartTransferApiSearchTickets
     */
    readonly type?: SearchTicketsTypeEnum;
    /**
     * External ref. ID that workspace can use to identify ticket outside of Fireblocks system.
     * @type {string}
     * @memberof SmartTransferApiSearchTickets
     */
    readonly externalRefId?: string;
    /**
     * ID of the record after which to fetch $limit records
     * @type {string}
     * @memberof SmartTransferApiSearchTickets
     */
    readonly after?: string;
    /**
     * Number of records to fetch. By default, it is 100
     * @type {number}
     * @memberof SmartTransferApiSearchTickets
     */
    readonly limit?: number;
    /**
     * Sort by field
     * @type {'createdAt' | 'updatedAt' | 'submittedAt'}
     * @memberof SmartTransferApiSearchTickets
     */
    readonly sortBy?: SearchTicketsSortByEnum;
    /**
     * ASC / DESC ordering (default DESC)
     * @type {'ASC' | 'DESC'}
     * @memberof SmartTransferApiSearchTickets
     */
    readonly order?: SearchTicketsOrderEnum;
}
/**
 * Request parameters for setExternalRefId operation in SmartTransferApi.
 * @export
 * @interface SmartTransferApiSetExternalRefIdRequest
 */
export interface SmartTransferApiSetExternalRefIdRequest {
    /**
     *
     * @type {SmartTransferSetTicketExternalId}
     * @memberof SmartTransferApiSetExternalRefId
     */
    readonly smartTransferSetTicketExternalId: SmartTransferSetTicketExternalId;
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiSetExternalRefId
     */
    readonly ticketId: string;
    /**
     * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @type {string}
     * @memberof SmartTransferApiSetExternalRefId
     */
    readonly idempotencyKey?: string;
}
/**
 * Request parameters for setTicketExpiration operation in SmartTransferApi.
 * @export
 * @interface SmartTransferApiSetTicketExpirationRequest
 */
export interface SmartTransferApiSetTicketExpirationRequest {
    /**
     *
     * @type {SmartTransferSetTicketExpiration}
     * @memberof SmartTransferApiSetTicketExpiration
     */
    readonly smartTransferSetTicketExpiration: SmartTransferSetTicketExpiration;
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiSetTicketExpiration
     */
    readonly ticketId: string;
    /**
     * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @type {string}
     * @memberof SmartTransferApiSetTicketExpiration
     */
    readonly idempotencyKey?: string;
}
/**
 * Request parameters for setUserGroups operation in SmartTransferApi.
 * @export
 * @interface SmartTransferApiSetUserGroupsRequest
 */
export interface SmartTransferApiSetUserGroupsRequest {
    /**
     *
     * @type {SmartTransferSetUserGroups}
     * @memberof SmartTransferApiSetUserGroups
     */
    readonly smartTransferSetUserGroups: SmartTransferSetUserGroups;
    /**
     * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @type {string}
     * @memberof SmartTransferApiSetUserGroups
     */
    readonly idempotencyKey?: string;
}
/**
 * Request parameters for submitTicket operation in SmartTransferApi.
 * @export
 * @interface SmartTransferApiSubmitTicketRequest
 */
export interface SmartTransferApiSubmitTicketRequest {
    /**
     *
     * @type {SmartTransferSubmitTicket}
     * @memberof SmartTransferApiSubmitTicket
     */
    readonly smartTransferSubmitTicket: SmartTransferSubmitTicket;
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiSubmitTicket
     */
    readonly ticketId: string;
    /**
     * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @type {string}
     * @memberof SmartTransferApiSubmitTicket
     */
    readonly idempotencyKey?: string;
}
/**
 * Request parameters for updateTicketTerm operation in SmartTransferApi.
 * @export
 * @interface SmartTransferApiUpdateTicketTermRequest
 */
export interface SmartTransferApiUpdateTicketTermRequest {
    /**
     *
     * @type {SmartTransferUpdateTicketTerm}
     * @memberof SmartTransferApiUpdateTicketTerm
     */
    readonly smartTransferUpdateTicketTerm: SmartTransferUpdateTicketTerm;
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiUpdateTicketTerm
     */
    readonly ticketId: string;
    /**
     *
     * @type {string}
     * @memberof SmartTransferApiUpdateTicketTerm
     */
    readonly termId: string;
    /**
     * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @type {string}
     * @memberof SmartTransferApiUpdateTicketTerm
     */
    readonly idempotencyKey?: string;
}
/**
 * SmartTransferApi - object-oriented interface
 * @export
 * @class SmartTransferApi
 * @extends {BaseAPI}
 */
export declare class SmartTransferApi extends BaseAPI {
    /**
     * Set funding source for ticket term and creating approving transaction for contract to transfer asset
     * @summary Set funding source and approval
     * @param {SmartTransferApiApproveDvPTicketTermRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    approveDvPTicketTerm(requestParameters: SmartTransferApiApproveDvPTicketTermRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferTicketTermResponse>>;
    /**
     * Cancel Smart Transfer ticket. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Cancel Ticket
     * @param {SmartTransferApiCancelTicketRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    cancelTicket(requestParameters: SmartTransferApiCancelTicketRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferTicketResponse>>;
    /**
     * Creates a new Smart Transfer ticket. Learn more about Fireblocks Smart Transfers [here](https://developers.fireblocks.com/docs/execute-smart-transfers).  **Note:** The `DVP` value is in Early Access and should only be used if Fireblocks has enabled it in your workspace. Contact your Customer Success Manager for more information.  **Endpoint Permissions:** Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Create Ticket
     * @param {SmartTransferApiCreateTicketRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    createTicket(requestParameters: SmartTransferApiCreateTicketRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferTicketResponse>>;
    /**
     * Creates new smart transfer ticket term (when the ticket status is DRAFT). Learn more about Fireblocks Smart Transfers in the following [guide](https://developers.fireblocks.com/docs/execute-smart-transfers). Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Create leg (term)
     * @param {SmartTransferApiCreateTicketTermRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    createTicketTerm(requestParameters: SmartTransferApiCreateTicketTermRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferTicketTermResponse>>;
    /**
     * Find Smart Transfer ticket by id. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
     * @summary Search Ticket by ID
     * @param {SmartTransferApiFindTicketByIdRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    findTicketById(requestParameters: SmartTransferApiFindTicketByIdRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferTicketResponse>>;
    /**
     * Find a specific term of a specific Smart Transfer ticket. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
     * @summary Get Smart Transfer ticket term
     * @param {SmartTransferApiFindTicketTermByIdRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    findTicketTermById(requestParameters: SmartTransferApiFindTicketTermByIdRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferTicketTermResponse>>;
    /**
     * Manually fulfill ticket, in case when all terms (legs) are funded manually. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Fund ticket manually
     * @param {SmartTransferApiFulfillTicketRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    fulfillTicket(requestParameters: SmartTransferApiFulfillTicketRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferTicketResponse>>;
    /**
     * Create or fulfill dvp ticket order
     * @summary Fund dvp ticket
     * @param {SmartTransferApiFundDvpTicketRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    fundDvpTicket(requestParameters: SmartTransferApiFundDvpTicketRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferTicketResponse>>;
    /**
     * Set funding source for ticket term (in case of ASYNC tickets, this will execute transfer immediately). Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Define funding source
     * @param {SmartTransferApiFundTicketTermRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    fundTicketTerm(requestParameters: SmartTransferApiFundTicketTermRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferTicketTermResponse>>;
    /**
     * Get smart transfer statistic
     * @summary Get smart transfers statistic
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    getSmartTransferStatistic(): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferStatistic>>;
    /**
     * Get Smart Transfer user groups. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
     * @summary Get user group
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    getSmartTransferUserGroups(): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferUserGroupsResponse>>;
    /**
     * Manually set ticket term transaction. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Manually add term transaction
     * @param {SmartTransferApiManuallyFundTicketTermRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    manuallyFundTicketTerm(requestParameters: SmartTransferApiManuallyFundTicketTermRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferTicketTermResponse>>;
    /**
     * Delete ticket term when ticket is in DRAFT status
     * @summary Delete ticket leg (term)
     * @param {SmartTransferApiRemoveTicketTermRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    removeTicketTerm(requestParameters: SmartTransferApiRemoveTicketTermRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<void>>;
    /**
     * Find tickets by their title or ticker. You can also query all tickets without filters by not providing any input parameters. **Endpoint Permissions:** Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
     * @summary Find Ticket
     * @param {SmartTransferApiSearchTicketsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    searchTickets(requestParameters?: SmartTransferApiSearchTicketsRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferTicketFilteredResponse>>;
    /**
     * Set external id Smart Transfer ticket. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Add external ref. ID
     * @param {SmartTransferApiSetExternalRefIdRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    setExternalRefId(requestParameters: SmartTransferApiSetExternalRefIdRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferTicketResponse>>;
    /**
     * Set expiration date on Smart Transfer ticket. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Set expiration
     * @param {SmartTransferApiSetTicketExpirationRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    setTicketExpiration(requestParameters: SmartTransferApiSetTicketExpirationRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferTicketResponse>>;
    /**
     * Set Smart Transfers user group to receive email notifications for Smart Transfers. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Set user group
     * @param {SmartTransferApiSetUserGroupsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    setUserGroups(requestParameters: SmartTransferApiSetUserGroupsRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferUserGroupsResponse>>;
    /**
     * Submit Smart Transfer ticket - change status into ready for approval if auto approval is not turned on, or OPEN if auto approval is on. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
     * @summary Submit ticket
     * @param {SmartTransferApiSubmitTicketRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    submitTicket(requestParameters: SmartTransferApiSubmitTicketRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferTicketResponse>>;
    /**
     * Update ticket term (when ticket status is DRAFT)
     * @summary Update ticket leg (term)
     * @param {SmartTransferApiUpdateTicketTermRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SmartTransferApi
     */
    updateTicketTerm(requestParameters: SmartTransferApiUpdateTicketTermRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<SmartTransferTicketTermResponse>>;
}
/**
 * @export
 */
export declare const SearchTicketsStatusesEnum: {
    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 SearchTicketsStatusesEnum = typeof SearchTicketsStatusesEnum[keyof typeof SearchTicketsStatusesEnum];
/**
 * @export
 */
export declare const SearchTicketsTypeEnum: {
    readonly Async: "ASYNC";
    readonly Dvp: "DVP";
};
export type SearchTicketsTypeEnum = typeof SearchTicketsTypeEnum[keyof typeof SearchTicketsTypeEnum];
/**
 * @export
 */
export declare const SearchTicketsSortByEnum: {
    readonly CreatedAt: "createdAt";
    readonly UpdatedAt: "updatedAt";
    readonly SubmittedAt: "submittedAt";
};
export type SearchTicketsSortByEnum = typeof SearchTicketsSortByEnum[keyof typeof SearchTicketsSortByEnum];
/**
 * @export
 */
export declare const SearchTicketsOrderEnum: {
    readonly Asc: "ASC";
    readonly Desc: "DESC";
};
export type SearchTicketsOrderEnum = typeof SearchTicketsOrderEnum[keyof typeof SearchTicketsOrderEnum];
