/**
 * 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 { Apy } from './apy';
import { EarnAsset } from './earn-asset';
import { Exposure } from './exposure';
/**
 *
 * @export
 * @interface Opportunity
 */
export interface Opportunity {
    /**
     * Unique opportunity identifier.
     * @type {string}
     * @memberof Opportunity
     */
    'id'?: string;
    /**
     * Lending protocol (`MORPHO` or `AAVE`).
     * @type {string}
     * @memberof Opportunity
     */
    'providerId'?: OpportunityProviderIdEnum;
    /**
     * Opportunity kind — vault or market.
     * @type {string}
     * @memberof Opportunity
     */
    'type'?: OpportunityTypeEnum;
    /**
     * Chain identifier as a string (e.g. \"1\" for Ethereum mainnet).
     * @type {string}
     * @memberof Opportunity
     */
    'chainId'?: string;
    /**
     * Primary contract address for the vault or market.
     * @type {string}
     * @memberof Opportunity
     */
    'address'?: string;
    /**
     * Display name of the opportunity.
     * @type {string}
     * @memberof Opportunity
     */
    'name'?: string;
    /**
     * Symbol or share token ticker for the position asset.
     * @type {string}
     * @memberof Opportunity
     */
    'symbol'?: string;
    /**
     * Underlying token the user deposits (principal).
     * @type {EarnAsset}
     * @memberof Opportunity
     */
    'principalAsset'?: EarnAsset;
    /**
     * Token representing the user’s position in the protocol (e.g. vault share).
     * @type {EarnAsset}
     * @memberof Opportunity
     */
    'positionAsset'?: EarnAsset;
    /**
     * Human-readable total value locked / assets in the opportunity.
     * @type {string}
     * @memberof Opportunity
     */
    'totalAssets'?: string;
    /**
     * Human-readable available liquidity.
     * @type {string}
     * @memberof Opportunity
     */
    'liquidity'?: string;
    /**
     * APY breakdown; values are percentages (e.g. 4.25 means 4.25%).
     * @type {Apy}
     * @memberof Opportunity
     */
    'apy'?: Apy;
    /**
     * Performance fee as a human-readable decimal string.
     * @type {string}
     * @memberof Opportunity
     */
    'performanceFee'?: string;
    /**
     * Management fee as a human-readable decimal string.
     * @type {string}
     * @memberof Opportunity
     */
    'managementFee'?: string;
    /**
     * What the `exposure` rows represent; `UNSPECIFIED` when there is no exposure.
     * @type {string}
     * @memberof Opportunity
     */
    'exposureType'?: OpportunityExposureTypeEnum;
    /**
     * Per-asset exposure breakdown (vault allocation slices, top 20 by USD notional). Empty when not applicable.
     * @type {Array<Exposure>}
     * @memberof Opportunity
     */
    'exposure'?: Array<Exposure>;
}
export declare const OpportunityProviderIdEnum: {
    readonly Morpho: "MORPHO";
    readonly Aave: "AAVE";
};
export type OpportunityProviderIdEnum = typeof OpportunityProviderIdEnum[keyof typeof OpportunityProviderIdEnum];
export declare const OpportunityTypeEnum: {
    readonly Vault: "VAULT";
    readonly Market: "MARKET";
};
export type OpportunityTypeEnum = typeof OpportunityTypeEnum[keyof typeof OpportunityTypeEnum];
export declare const OpportunityExposureTypeEnum: {
    readonly Unspecified: "UNSPECIFIED";
    readonly VaultAllocation: "VAULT_ALLOCATION";
    readonly MarketCollateral: "MARKET_COLLATERAL";
};
export type OpportunityExposureTypeEnum = typeof OpportunityExposureTypeEnum[keyof typeof OpportunityExposureTypeEnum];
