import { Address, LucidEvolution } from '@lucid-evolution/lucid';
import {
  fromSysParamsCredential,
  SystemParams,
} from '../../types/system-params';
import { createScriptAddress } from '../../utils/lucid-utils';

export function mkTreasuryAddr(
  lucid: LucidEvolution,
  sysParams: SystemParams,
): Address {
  return createScriptAddress(
    lucid.config().network!,
    sysParams.validatorHashes.treasuryHash,
    sysParams.treasuryParams.treasuryUtxosStakeCredential != null
      ? fromSysParamsCredential(
          sysParams.treasuryParams.treasuryUtxosStakeCredential,
        )
      : undefined,
  );
}
