import BigNumber from 'bignumber.js'; import { Context, DefaultPortfolio, Identity, Namespace, NumberedPortfolio } from '../../../internal'; import { HistoricSettlement, PaginationOptions, ProcedureMethod, ResultSet } from '../../../types'; /** * Handles all Portfolio related functionality on the Identity side */ export declare class Portfolios extends Namespace { /** * @hidden */ constructor(parent: Identity, context: Context); /** * Retrieve all the Portfolios owned by this Identity * * @returns An array where the first item is always the Default Portfolio, followed by any Numbered Portfolios owned by this Identity */ getPortfolios(): Promise<[DefaultPortfolio, ...NumberedPortfolio[]]>; /** * Retrieve all Portfolios custodied by this Identity. * This only includes portfolios owned by a different Identity but custodied by this one. * To fetch Portfolios owned by this Identity, use {@link getPortfolios} * * @param paginationOpts - Optional pagination options * * @returns A ResultSet of portfolios (Default or Numbered) and pagination metadata * @note supports pagination */ getCustodiedPortfolios(paginationOpts?: PaginationOptions): Promise>; /** * Retrieve the Default Portfolio for this Identity * * @returns Promise that resolves to the Default Portfolio */ getPortfolio(): Promise; /** * Retrieve a Numbered Portfolio by its ID * * @param args.portfolioId - ID of the Portfolio to retrieve * @returns Promise that resolves to the requested Numbered Portfolio */ getPortfolio(args: { portfolioId: BigNumber; }): Promise; /** * Retrieve a Numbered Portfolio by its name * * @param args.name - Name of the Portfolio to fetch * @returns Promise that resolves to the Portfolio with the given name * @throws if no Portfolio exists with the given name */ getPortfolioByName(args: { name: string; }): Promise; /** * Delete a Portfolio by ID * * @note The calling Identity must be the custodian of the Portfolio * * @param args.portfolio - Portfolio instance or portfolio ID to delete */ delete: ProcedureMethod<{ portfolio: BigNumber | NumberedPortfolio; }, void>; /** * Retrieve a list of transactions where this identity was involved. Can be filtered using parameters * * @param filters.account - Account involved in the settlement * @param filters.ticker - ticker involved in the transaction * @param filters.assetId - Asset ID to filter by (overrides ticker if both provided) * * @returns Promise that resolves to an array of historical settlements * @note uses the middlewareV2 */ getTransactionHistory(filters?: { account?: string; ticker?: string; assetId?: string; }): Promise; } //# sourceMappingURL=Portfolios.d.ts.map