Product:
    | {
        availableFrom: Date;
        availableTo?: null
        | Date;
        currency:
            | "AUD"
            | "CAD"
            | "CNY"
            | "EUR"
            | "GBP"
            | "HKD"
            | "JPY"
            | "NZD"
            | "SGD"
            | "USD";
        documents: { name: string; url: string }[];
        id: string;
        internalName: string;
        kind: "bank_account";
        liquidityClass: "cash" | "reserve" | "strategic" | "linked";
        name: string;
        noticePeriodISO8601: string;
        provider: { id: string; name: string };
        rate: {
            effectiveFromInclusive: Date;
            id: string;
            productId: string;
            rate: Decimal;
            tiers: {
                id: string;
                maxBalanceExclusive: Decimal;
                minBalanceInclusive: Decimal;
                rate: Decimal;
            }[];
            updatedAt: Date;
        };
        rateHistory: {
            effectiveFromInclusive: Date;
            id: string;
            productId: string;
            rate: Decimal;
            tiers: {
                id: string;
                maxBalanceExclusive: Decimal;
                minBalanceInclusive: Decimal;
                rate: Decimal;
            }[];
            updatedAt: Date;
        }[];
        website?: null
        | string;
    }
    | {
        apir: null
        | string;
        availableFrom: Date;
        availableTo?: null | Date;
        averageCreditQuality: null | string;
        depositPaymentIdentifier:
            | null
            | {
                id: string;
                identifierType: "swift"
                | "iban"
                | "au_bsb"
                | "au_payid"
                | "us_aba";
                paymentIdentifierAuBsb: null | { accountNumber: string; bsb: string };
                paymentIdentifierAuPayId:
                    | null
                    | {
                        accountABN?: null
                        | string;
                        accountCustomPayID?: null | string;
                        accountEmail?: null | string;
                        accountMobile?: null | string;
                        accountOrganisationID?: null | string;
                    };
                paymentIdentifierIban: null
                | { iban: string };
                paymentIdentifierSwift: null | { accountNumber: string; bic: string };
                paymentIdentifierUsAba:
                    | null
                    | {
                        accountNumber: string;
                        accountType: "SAVINGS"
                        | "CHECKING";
                        routingNumber: string;
                        validNetworks: ("ACH" | "FEDWIRE")[];
                    };
            };
        distributionFrequencyISO8601: null
        | string;
        distributionKind: "distributing" | "accumulating";
        documents: { name: string; url: string }[];
        domicile: null | string;
        fundKind: "money_market" | "fixed_income" | "cash_etf";
        fundUnitId: string;
        id: string;
        inceptionDate: null | Date;
        internalName: string;
        investmentStyle: null | "active" | "passive";
        isin: null | string;
        kind: "fund";
        liquidityClass: "cash" | "reserve" | "strategic" | "linked";
        managementCost: null | Decimal;
        name: string;
        noticePeriodISO8601: string;
        overview: null | string;
        performanceTarget: null | string;
        pricing: null | string;
        provider: { id: string; name: string };
        rates: {
            effectiveFromInclusive: null | Date;
            effectiveToExclusive: Date;
            id: string;
            productId: string;
            rate: Decimal;
            updatedAt: Date;
        }[];
        structure: null
        | string;
        unit: {
            id: string;
            pricedInCurrency:
                | "AUD"
                | "CAD"
                | "CNY"
                | "EUR"
                | "GBP"
                | "HKD"
                | "JPY"
                | "NZD"
                | "SGD"
                | "USD";
            unitPriceFileUrl: null
            | string;
        };
        website?: null
        | string;
    }
    | {
        availableFrom: Date;
        availableTo?: null
        | Date;
        currency:
            | "AUD"
            | "CAD"
            | "CNY"
            | "EUR"
            | "GBP"
            | "HKD"
            | "JPY"
            | "NZD"
            | "SGD"
            | "USD";
        documents: { name: string; url: string }[];
        id: string;
        internalName: string;
        kind: "term_deposit";
        liquidityClass: "cash" | "reserve" | "strategic" | "linked";
        name: string;
        provider: { id: string; name: string };
        rateQuoteHistory: {
            durationISO8601: string;
            effectiveAt: Date;
            id: string;
            maxBalanceExclusive: null | Decimal;
            minBalanceInclusive: Decimal;
            productId: string;
            rate: Decimal;
            updatedAt: Date;
        }[];
        rateQuotes: {
            durationISO8601: string;
            effectiveAt: Date;
            id: string;
            maxBalanceExclusive: null
            | Decimal;
            minBalanceInclusive: Decimal;
            productId: string;
            rate: Decimal;
            updatedAt: Date;
        }[];
        website?: null
        | string;
    }