import { Data } from '@lucid-evolution/lucid';
import { AssetClassSchema } from '../../types/generic';

const StableswapParamsSchema = Data.Object({
  iassetSymbol: Data.Bytes(),
  cdpToken: AssetClassSchema,
  versionRecordToken: AssetClassSchema,
  cdpValHash: Data.Bytes(),
  treasuryValHash: Data.Bytes(),
});
export type StableswapParams = Data.Static<typeof StableswapParamsSchema>;
export const StableswapParams =
  StableswapParamsSchema as unknown as StableswapParams;

export function castStableswapParams(params: StableswapParams): Data {
  return Data.castTo(params, StableswapParams);
}
