Hierarchy

  • Base<IDLWithdrawEpoch>
    • WithdrawEpoch

Constructors

  • Parameters

    • address: PublicKey
    • idx: number
    • market: Market
    • solanaContext: SolanaContext
    • client: CredixClient
    • programVersion: AnchorTypeDef<Object, AnchorDefined<Credix, {
          DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
          DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
          DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
          DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
          Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
          LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
          RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
          RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
          RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
          TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
          Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
          TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
          TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
          TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
          TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
          TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
          WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
      }>>

    Returns WithdrawEpoch

Properties

address: PublicKey
client: CredixClient
idx: number
market: Market
programVersion: AnchorTypeDef<Object, AnchorDefined<Credix, {
    DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
}>>
solanaContext: SolanaContext

Accessors

  • get program(): AnchorProgram<Credix, {
        borrowerInfo: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        credixPass: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        crossChainInvestor: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        deal: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        dealClaims: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        dealTranches: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        globalMarketState: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        marketAdmins: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        programState: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        repaymentSchedule: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        trancheInfo: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        tranchePass: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        withdrawEpoch: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        withdrawRequest: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
    }, AnchorDefined<Credix, {
        DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    }>, MakeInstructions<[{
        accounts: [{
            isMut: true;
            isSigner: true;
            name: "owner";
        }, {
            isMut: true;
            isSigner: false;
            name: "globalMarketState";
            pda: {
                seeds: [{
                    kind: "arg";
                    path: "global_market_seed";
                    type: "string";
                }];
            };
        }, {
            isMut: true;
            isSigner: false;
            name: "marketAdmins";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }, {
                    kind: "const";
                    type: "string";
                    value: "admins";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "programState";
            pda: {
                seeds: [{
                    kind: "const";
                    type: "string";
                    value: "program-state";
                }];
            };
        }, {
            docs: ["The alternative is to create an empty SigningAuthority struct that can be passed to Account<>"];
            isMut: false;
            isSigner: false;
            name: "signingAuthority";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }];
        args: [{
            name: "globalMarketSeed";
            type: "string";
        }, {
            name: "withdrawalFee";
            type: {
                defined: "Fraction";
            };
        }, {
            name: "credixFeePercentage";
            type: {
                defined: "Fraction";
            };
        }, {
            name: "multisig";
            type: {
                option: "publicKey";
            };
        }, {
            name: "managers";
            type: {
                option: {
                    vec: "publicKey";
                };
            };
        }, {
            name: "passIssuers";
            type: {
                option: {
                    vec: "publicKey";
                };
            };
        }];
        name: "initializeMarket";
    }, {
        accounts: [{
            isMut: true;
            isSigner: true;
            name: "investor";
        }, {
            isMut: false;
            isSigner: false;
            name: "globalMarketState";
        }, {
            isMut: false;
            isSigner: false;
            name: "signingAuthority";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }, {
            isMut: true;
            isSigner: false;
            name: "investorTokenAccount";
        }, {
            isMut: true;
            isSigner: false;
            name: "liquidityPoolTokenAccount";
        }];
        args: [{
            name: "amount";
            type: "u64";
        }];
        name: "depositFunds";
    }, {
        accounts: [{
            isMut: true;
            isSigner: true;
            name: "owner";
        }, {
            isMut: false;
            isSigner: false;
            name: "borrower";
        }, {
            isMut: true;
            isSigner: false;
            name: "borrowerInfo";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }, {
                    kind: "account";
                    path: "borrower";
                    type: "publicKey";
                }, {
                    kind: "const";
                    type: "string";
                    value: "borrower-info";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "marketAdmins";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }, {
                    kind: "const";
                    type: "string";
                    value: "admins";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "globalMarketState";
        }];
        args: [{
            name: "maxFundingDuration";
            type: "u8";
        }, {
            name: "dealName";
            type: "string";
        }, {
            name: "arrangementFees";
            type: "u64";
        }, {
            name: "arrangementFeePercentage";
            type: {
                defined: "Fraction";
            };
        }, {
            name: "migrated";
            type: "bool";
        }];
        name: "createDeal";
    }], AnchorDefined<Credix, {
        DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    }>>, MakeInstructions<unknown, AnchorDefined<Credix, {
        DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    }>>>
  • Returns AnchorProgram<Credix, {
        borrowerInfo: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        credixPass: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        crossChainInvestor: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        deal: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        dealClaims: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        dealTranches: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        globalMarketState: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        marketAdmins: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        programState: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        repaymentSchedule: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        trancheInfo: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        tranchePass: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        withdrawEpoch: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
        withdrawRequest: AnchorTypeDef<Object, AnchorDefined<Credix, {
            DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
            WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        }>>;
    }, AnchorDefined<Credix, {
        DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    }>, MakeInstructions<[{
        accounts: [{
            isMut: true;
            isSigner: true;
            name: "owner";
        }, {
            isMut: true;
            isSigner: false;
            name: "globalMarketState";
            pda: {
                seeds: [{
                    kind: "arg";
                    path: "global_market_seed";
                    type: "string";
                }];
            };
        }, {
            isMut: true;
            isSigner: false;
            name: "marketAdmins";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }, {
                    kind: "const";
                    type: "string";
                    value: "admins";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "programState";
            pda: {
                seeds: [{
                    kind: "const";
                    type: "string";
                    value: "program-state";
                }];
            };
        }, {
            docs: ["The alternative is to create an empty SigningAuthority struct that can be passed to Account<>"];
            isMut: false;
            isSigner: false;
            name: "signingAuthority";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }];
        args: [{
            name: "globalMarketSeed";
            type: "string";
        }, {
            name: "withdrawalFee";
            type: {
                defined: "Fraction";
            };
        }, {
            name: "credixFeePercentage";
            type: {
                defined: "Fraction";
            };
        }, {
            name: "multisig";
            type: {
                option: "publicKey";
            };
        }, {
            name: "managers";
            type: {
                option: {
                    vec: "publicKey";
                };
            };
        }, {
            name: "passIssuers";
            type: {
                option: {
                    vec: "publicKey";
                };
            };
        }];
        name: "initializeMarket";
    }, {
        accounts: [{
            isMut: true;
            isSigner: true;
            name: "investor";
        }, {
            isMut: false;
            isSigner: false;
            name: "globalMarketState";
        }, {
            isMut: false;
            isSigner: false;
            name: "signingAuthority";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }, {
            isMut: true;
            isSigner: false;
            name: "investorTokenAccount";
        }, {
            isMut: true;
            isSigner: false;
            name: "liquidityPoolTokenAccount";
        }];
        args: [{
            name: "amount";
            type: "u64";
        }];
        name: "depositFunds";
    }, {
        accounts: [{
            isMut: true;
            isSigner: true;
            name: "owner";
        }, {
            isMut: false;
            isSigner: false;
            name: "borrower";
        }, {
            isMut: true;
            isSigner: false;
            name: "borrowerInfo";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }, {
                    kind: "account";
                    path: "borrower";
                    type: "publicKey";
                }, {
                    kind: "const";
                    type: "string";
                    value: "borrower-info";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "marketAdmins";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }, {
                    kind: "const";
                    type: "string";
                    value: "admins";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "globalMarketState";
        }];
        args: [{
            name: "maxFundingDuration";
            type: "u8";
        }, {
            name: "dealName";
            type: "string";
        }, {
            name: "arrangementFees";
            type: "u64";
        }, {
            name: "arrangementFeePercentage";
            type: {
                defined: "Fraction";
            };
        }, {
            name: "migrated";
            type: "bool";
        }];
        name: "createDeal";
    }], AnchorDefined<Credix, {
        DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    }>>, MakeInstructions<unknown, AnchorDefined<Credix, {
        DaycountConvention: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DealTranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DistributionWaterfall: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        DistributionWaterfallType: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        Fraction: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        LpClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentAllocation: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentPeriod: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        RepaymentPeriodInput: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TimeFrame: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        Tranche: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheAmountsDue: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheAmountsRepaid: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheClaim: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheConfig: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        TrancheRates: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
        WaterfallTier: AnchorTypeDef<Object, ({ Fraction: AnchorTypeDef<{ name: "Fraction"; type: { kind: "struct"; fields: [{ name: "numerator"; type: "u32"; }, { name: "denominator"; type: "u32"; }]; }; } & { name: "Fraction"; }, ...>; ... 15 more ...; TimeFrame: AnchorTypeDef<...>; })>;
    }>>>

  • get secondaryMarketAnchorProgram(): Program<CredixSecondaryMarket>
  • Returns Program<CredixSecondaryMarket>

  • get secondaryMarketProgram(): AnchorProgram<CredixSecondaryMarket, {
        secondaryMarket: AnchorTypeDef<Object, AnchorDefined<CredixSecondaryMarket, Record<string, never>>>;
        sellOrder: AnchorTypeDef<Object, AnchorDefined<CredixSecondaryMarket, Record<string, never>>>;
        sellerInfo: AnchorTypeDef<Object, AnchorDefined<CredixSecondaryMarket, Record<string, never>>>;
        signingAuthority: AnchorTypeDef<Object, AnchorDefined<CredixSecondaryMarket, Record<string, never>>>;
    }, AnchorDefined<CredixSecondaryMarket, Record<string, never>>, MakeInstructions<[{
        accounts: [{
            isMut: true;
            isSigner: true;
            name: "owner";
        }, {
            isMut: false;
            isSigner: false;
            name: "globalMarketState";
        }, {
            isMut: false;
            isSigner: false;
            name: "marketAdmins";
        }, {
            isMut: true;
            isSigner: false;
            name: "secondaryMarket";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }, {
            isMut: true;
            isSigner: false;
            name: "signingAuthority";
            pda: {
                seeds: [{
                    account: "SecondaryMarket";
                    kind: "account";
                    path: "secondary_market";
                    type: "publicKey";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "rent";
        }, {
            isMut: false;
            isSigner: false;
            name: "tokenProgram";
        }, {
            isMut: false;
            isSigner: false;
            name: "systemProgram";
        }];
        args: [];
        name: "initializeSecondaryMarket";
    }, {
        accounts: [{
            isMut: true;
            isSigner: true;
            name: "seller";
        }, {
            isMut: false;
            isSigner: false;
            name: "globalMarketState";
        }, {
            isMut: false;
            isSigner: false;
            name: "secondaryMarket";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }, {
            isMut: true;
            isSigner: false;
            name: "sellerInfo";
            pda: {
                seeds: [{
                    account: "SecondaryMarket";
                    kind: "account";
                    path: "secondary_market";
                    type: "publicKey";
                }, {
                    kind: "account";
                    path: "seller";
                    type: "publicKey";
                }, {
                    kind: "const";
                    type: "string";
                    value: "seller-info";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "credixSigningAuthority";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }];
        args: [{
            name: "amountA";
            type: "u64";
        }, {
            name: "trancheIndex";
            type: {
                option: "u8";
            };
        }, {
            name: "amountB";
            type: "u64";
        }, {
            name: "buyer";
            type: {
                option: "publicKey";
            };
        }];
        name: "initializeSellOrder";
    }, {
        accounts: [{
            isMut: true;
            isSigner: true;
            name: "buyer";
        }, {
            isMut: false;
            isSigner: false;
            name: "seller";
        }, {
            isMut: false;
            isSigner: false;
            name: "globalMarketState";
        }, {
            isMut: false;
            isSigner: false;
            name: "secondaryMarket";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "credixSigningAuthority";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "signingAuthority";
            pda: {
                seeds: [{
                    account: "SecondaryMarket";
                    kind: "account";
                    path: "secondary_market";
                    type: "publicKey";
                }];
            };
        }];
        args: [{
            name: "trancheIndex";
            type: {
                option: "u8";
            };
        }];
        name: "fillSellOrder";
    }, {
        accounts: [{
            isMut: false;
            isSigner: true;
            name: "seller";
        }, {
            isMut: false;
            isSigner: false;
            name: "globalMarketState";
        }, {
            isMut: false;
            isSigner: false;
            name: "secondaryMarket";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "credixSigningAuthority";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "signingAuthority";
            pda: {
                seeds: [{
                    account: "SecondaryMarket";
                    kind: "account";
                    path: "secondary_market";
                    type: "publicKey";
                }];
            };
        }];
        args: [{
            name: "sellOrderNumber";
            type: "u16";
        }];
        name: "cancelSellOrder";
    }, {
        accounts: [{
            isMut: false;
            isSigner: true;
            name: "owner";
        }, {
            isMut: false;
            isSigner: false;
            name: "globalMarketState";
        }, {
            isMut: false;
            isSigner: false;
            name: "marketAdmins";
        }, {
            isMut: false;
            isSigner: false;
            name: "credixProgramState";
        }, {
            isMut: true;
            isSigner: false;
            name: "secondaryMarket";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }];
        args: [{
            name: "freeze";
            type: "bool";
        }];
        name: "freezeOrThawSecondaryMarket";
    }], AnchorDefined<CredixSecondaryMarket, Record<string, never>>>, MakeInstructions<unknown, AnchorDefined<CredixSecondaryMarket, Record<string, never>>>>
  • Returns AnchorProgram<CredixSecondaryMarket, {
        secondaryMarket: AnchorTypeDef<Object, AnchorDefined<CredixSecondaryMarket, Record<string, never>>>;
        sellOrder: AnchorTypeDef<Object, AnchorDefined<CredixSecondaryMarket, Record<string, never>>>;
        sellerInfo: AnchorTypeDef<Object, AnchorDefined<CredixSecondaryMarket, Record<string, never>>>;
        signingAuthority: AnchorTypeDef<Object, AnchorDefined<CredixSecondaryMarket, Record<string, never>>>;
    }, AnchorDefined<CredixSecondaryMarket, Record<string, never>>, MakeInstructions<[{
        accounts: [{
            isMut: true;
            isSigner: true;
            name: "owner";
        }, {
            isMut: false;
            isSigner: false;
            name: "globalMarketState";
        }, {
            isMut: false;
            isSigner: false;
            name: "marketAdmins";
        }, {
            isMut: true;
            isSigner: false;
            name: "secondaryMarket";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }, {
            isMut: true;
            isSigner: false;
            name: "signingAuthority";
            pda: {
                seeds: [{
                    account: "SecondaryMarket";
                    kind: "account";
                    path: "secondary_market";
                    type: "publicKey";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "rent";
        }, {
            isMut: false;
            isSigner: false;
            name: "tokenProgram";
        }, {
            isMut: false;
            isSigner: false;
            name: "systemProgram";
        }];
        args: [];
        name: "initializeSecondaryMarket";
    }, {
        accounts: [{
            isMut: true;
            isSigner: true;
            name: "seller";
        }, {
            isMut: false;
            isSigner: false;
            name: "globalMarketState";
        }, {
            isMut: false;
            isSigner: false;
            name: "secondaryMarket";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }, {
            isMut: true;
            isSigner: false;
            name: "sellerInfo";
            pda: {
                seeds: [{
                    account: "SecondaryMarket";
                    kind: "account";
                    path: "secondary_market";
                    type: "publicKey";
                }, {
                    kind: "account";
                    path: "seller";
                    type: "publicKey";
                }, {
                    kind: "const";
                    type: "string";
                    value: "seller-info";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "credixSigningAuthority";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }];
        args: [{
            name: "amountA";
            type: "u64";
        }, {
            name: "trancheIndex";
            type: {
                option: "u8";
            };
        }, {
            name: "amountB";
            type: "u64";
        }, {
            name: "buyer";
            type: {
                option: "publicKey";
            };
        }];
        name: "initializeSellOrder";
    }, {
        accounts: [{
            isMut: true;
            isSigner: true;
            name: "buyer";
        }, {
            isMut: false;
            isSigner: false;
            name: "seller";
        }, {
            isMut: false;
            isSigner: false;
            name: "globalMarketState";
        }, {
            isMut: false;
            isSigner: false;
            name: "secondaryMarket";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "credixSigningAuthority";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "signingAuthority";
            pda: {
                seeds: [{
                    account: "SecondaryMarket";
                    kind: "account";
                    path: "secondary_market";
                    type: "publicKey";
                }];
            };
        }];
        args: [{
            name: "trancheIndex";
            type: {
                option: "u8";
            };
        }];
        name: "fillSellOrder";
    }, {
        accounts: [{
            isMut: false;
            isSigner: true;
            name: "seller";
        }, {
            isMut: false;
            isSigner: false;
            name: "globalMarketState";
        }, {
            isMut: false;
            isSigner: false;
            name: "secondaryMarket";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "credixSigningAuthority";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }, {
            isMut: false;
            isSigner: false;
            name: "signingAuthority";
            pda: {
                seeds: [{
                    account: "SecondaryMarket";
                    kind: "account";
                    path: "secondary_market";
                    type: "publicKey";
                }];
            };
        }];
        args: [{
            name: "sellOrderNumber";
            type: "u16";
        }];
        name: "cancelSellOrder";
    }, {
        accounts: [{
            isMut: false;
            isSigner: true;
            name: "owner";
        }, {
            isMut: false;
            isSigner: false;
            name: "globalMarketState";
        }, {
            isMut: false;
            isSigner: false;
            name: "marketAdmins";
        }, {
            isMut: false;
            isSigner: false;
            name: "credixProgramState";
        }, {
            isMut: true;
            isSigner: false;
            name: "secondaryMarket";
            pda: {
                seeds: [{
                    account: "GlobalMarketState";
                    kind: "account";
                    path: "global_market_state";
                    type: "publicKey";
                }];
            };
        }];
        args: [{
            name: "freeze";
            type: "bool";
        }];
        name: "freezeOrThawSecondaryMarket";
    }], AnchorDefined<CredixSecondaryMarket, Record<string, never>>>, MakeInstructions<unknown, AnchorDefined<CredixSecondaryMarket, Record<string, never>>>>

Methods

  • Parameters

    • amount: number
    • Optional owner: PublicKey

    Returns Promise<TransactionInstruction>

  • The investor locked liquidity according to the withdraw epoch status. The amount left to withdraw or its corresponding LP share fraction.

    Returns

    The amount left to withdraw or its corresponding LP share fraction.

    Parameters

    • investor: PublicKey

      The investor public key

    Returns Promise<TokenAmount>

  • The maximum amount an investor can withdraw according to epoch status, redeemable liquidity left and current value of LP position (as in case of defaults happening the LP token price and value of their LP position drops).

    Returns

    The maximum withdrawable amount

    Parameters

    • investor: PublicKey

      The investor public key

    Returns Promise<TokenAmount>

Generated using TypeDoc