/**
 * 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.
 */
/**
 *
 * @export
 * @interface Position2
 */
export interface Position2 {
    /**
     * Position UUID.
     * @type {string}
     * @memberof Position2
     */
    'id': string;
    /**
     * Lifecycle status of the position.
     * @type {string}
     * @memberof Position2
     */
    'status': Position2StatusEnum;
    /**
     * True while an action is in progress for this position.
     * @type {boolean}
     * @memberof Position2
     */
    'inFlight': boolean;
    /**
     * Whether the position is lend- or borrow-side.
     * @type {string}
     * @memberof Position2
     */
    'positionType': Position2PositionTypeEnum;
    /**
     * Fireblocks vault account holding the position.
     * @type {string}
     * @memberof Position2
     */
    'vaultAccountId': string;
    /**
     * Opportunity / vault or market identifier.
     * @type {string}
     * @memberof Position2
     */
    'opportunityId': string;
    /**
     * Chain identifier as a string (e.g. \"1\").
     * @type {string}
     * @memberof Position2
     */
    'chainId': string;
    /**
     * Lending protocol.
     * @type {string}
     * @memberof Position2
     */
    'providerId': Position2ProviderIdEnum;
    /**
     * Whether the position was opened natively in Fireblocks or imported externally.
     * @type {string}
     * @memberof Position2
     */
    'origin': Position2OriginEnum;
    /**
     * Fireblocks asset id for the principal (underlying) asset.
     * @type {string}
     * @memberof Position2
     */
    'principalAssetId': string;
    /**
     * Fireblocks asset id for the position / share token.
     * @type {string}
     * @memberof Position2
     */
    'positionAssetId': string;
    /**
     * Human-readable principal balance.
     * @type {string}
     * @memberof Position2
     */
    'principalBalance': string;
    /**
     * Human-readable position token balance.
     * @type {string}
     * @memberof Position2
     */
    'positionBalance': string;
    /**
     * Creation time (ISO-8601).
     * @type {string}
     * @memberof Position2
     */
    'createdAt': string;
    /**
     * Last update time (ISO-8601).
     * @type {string}
     * @memberof Position2
     */
    'updatedAt': string;
    /**
     * Actions the API allows next for this position.
     * @type {Array<string>}
     * @memberof Position2
     */
    'availableActions': Array<Position2AvailableActionsEnum>;
    /**
     * Last successful on-chain sync time (ISO-8601).
     * @type {string}
     * @memberof Position2
     */
    'lastSyncedAt'?: string;
    /**
     * Accrued yield in principal token units (decimal string). Only present for Morpho positions.
     * @type {string}
     * @memberof Position2
     */
    'yield'?: string;
}
export declare const Position2StatusEnum: {
    readonly Active: "ACTIVE";
    readonly Inactive: "INACTIVE";
};
export type Position2StatusEnum = typeof Position2StatusEnum[keyof typeof Position2StatusEnum];
export declare const Position2PositionTypeEnum: {
    readonly Lend: "LEND";
    readonly Borrow: "BORROW";
};
export type Position2PositionTypeEnum = typeof Position2PositionTypeEnum[keyof typeof Position2PositionTypeEnum];
export declare const Position2ProviderIdEnum: {
    readonly Morpho: "MORPHO";
    readonly Aave: "AAVE";
};
export type Position2ProviderIdEnum = typeof Position2ProviderIdEnum[keyof typeof Position2ProviderIdEnum];
export declare const Position2OriginEnum: {
    readonly Native: "NATIVE";
    readonly External: "EXTERNAL";
};
export type Position2OriginEnum = typeof Position2OriginEnum[keyof typeof Position2OriginEnum];
export declare const Position2AvailableActionsEnum: {
    readonly Deposit: "DEPOSIT";
    readonly Withdraw: "WITHDRAW";
};
export type Position2AvailableActionsEnum = typeof Position2AvailableActionsEnum[keyof typeof Position2AvailableActionsEnum];
