@indigo-labs/indigo-sdk
Version:
Indigo SDK for interacting with Indigo endpoints via lucid-evolution
44 lines (39 loc) • 1.56 kB
text/typescript
import { Data } from '@lucid-evolution/lucid';
import { AssetClassSchema } from '../../types/generic';
const CdpParamsSchema = Data.Object({
cdp_auth_token: AssetClassSchema,
cdp_asset_symbol: Data.Bytes(),
iasset_auth_token: AssetClassSchema,
collateral_asset_auth_token: AssetClassSchema,
stability_pool_auth_token: AssetClassSchema,
upgrade_token: AssetClassSchema,
version_record_token: AssetClassSchema,
interest_collector_val_hash: Data.Bytes(),
sp_val_hash: Data.Bytes(),
iasset_val_hash: Data.Bytes(),
treasury_val_hash: Data.Bytes(),
cdp_redeem_val_hash: Data.Bytes(),
bias_time: Data.Integer(),
});
export type CdpParams = Data.Static<typeof CdpParamsSchema>;
const CdpParams = CdpParamsSchema as unknown as CdpParams;
export function castCdpParams(params: CdpParams): Data {
return Data.castTo(params, CdpParams);
}
const CdpRedeemParamsSchema = Data.Object({
cdp_auth_token: AssetClassSchema,
cdp_asset_symbol: Data.Bytes(),
iasset_auth_token: AssetClassSchema,
collateral_asset_auth_token: AssetClassSchema,
interest_collector_val_hash: Data.Bytes(),
iasset_val_hash: Data.Bytes(),
treasury_val_hash: Data.Bytes(),
gov_nft: AssetClassSchema,
partial_redemption_extra_fee_lovelace: Data.Integer(),
bias_time: Data.Integer(),
});
export type CdpRedeemParams = Data.Static<typeof CdpRedeemParamsSchema>;
const CdpRedeemParams = CdpRedeemParamsSchema as unknown as CdpRedeemParams;
export function castCdpRedeemParams(params: CdpRedeemParams): Data {
return Data.castTo(params, CdpRedeemParams);
}