import { fromHex, fromText, OutRef } from '@lucid-evolution/lucid';
import { serialiseStableswapOutputDatum } from './types-new';
import { Data } from '@evolution-sdk/evolution';

export const BASE_MAX_EXECUTION_FEE = 1_620_000n;

export function createDestinationDatum(
  datum: Data.Data | null,
  outRef: OutRef,
): string {
  if (!datum) {
    return serialiseStableswapOutputDatum([
      fromHex(fromText('IndigoStableswap')),
      {
        txHash: fromHex(outRef.txHash),
        outputIndex: BigInt(outRef.outputIndex),
      },
    ]);
  }

  return Data.toCBORHex(datum);
}
