import type { Instrument } from '../instruments/instruments';
import type { SNAPSHOT_REASON_TRADE, SNAPSHOT_REASON_REBALANCE, SNAPSHOT_REASON_VALUATION, SNAPSHOT_REASON_AUDIT } from '@cranberry-money/shared-constants';
export interface AssetHolding {
    uuid: string;
    portfolio: string;
    instrument: Instrument;
    instrumentName: string;
    instrumentSymbol: string;
    quantity: number;
    createdAt: string;
    updatedAt: string;
}
export interface AssetHoldingSnapshot {
    id: number;
    assetHolding: string;
    portfolioId: number;
    instrumentName: string;
    instrumentSymbol: string;
    quantity: number;
    snapshotReason: typeof SNAPSHOT_REASON_TRADE | typeof SNAPSHOT_REASON_REBALANCE | typeof SNAPSHOT_REASON_VALUATION | typeof SNAPSHOT_REASON_AUDIT;
    snapshotDate: string;
    createdAt: string;
    updatedAt: string;
}
export interface AssetHoldingFilters {
    portfolio_id?: string;
    portfolio_uuid?: string;
    instrument?: string;
    min_quantity?: number;
    max_quantity?: number;
    order_by?: string;
}
export interface AssetHoldingSnapshotFilters {
    asset_holding_id?: string;
    portfolio_id?: string;
    reason?: typeof SNAPSHOT_REASON_TRADE | typeof SNAPSHOT_REASON_REBALANCE | typeof SNAPSHOT_REASON_VALUATION | typeof SNAPSHOT_REASON_AUDIT;
    start_date?: string;
    end_date?: string;
    order_by?: string;
}
//# sourceMappingURL=holdings.d.ts.map