UNPKG

@harmoniclabs/buildooor

Version:

Cardano transaction builder in typescript

43 lines (42 loc) 1.71 kB
import { Coin } from "@harmoniclabs/cardano-ledger-ts"; import { CanBeUInteger } from "../utils/ints.js"; import { CborPositiveRational } from "@harmoniclabs/cbor"; import { ExBudget, ExBudgetJson } from "@harmoniclabs/plutus-machine"; import { Rational } from "../utils/Rational.js"; import { CostModels } from "@harmoniclabs/cardano-costmodels-ts"; export interface ValidatedTxBuilderProtocolParams { txFeePerByte: bigint; txFeeFixed: bigint; utxoCostPerByte: bigint; maxTxSize: bigint; maxTxExecutionUnits: ExBudget; maxCollateralInputs: bigint; collateralPercentage: bigint; minfeeRefScriptCostPerByte: CborPositiveRational; executionUnitPrices: [ mem_price: CborPositiveRational, step_price: CborPositiveRational ]; costModels: CostModels; } export interface TxBuilderProtocolParams { txFeePerByte: CanBeUInteger; txFeeFixed: CanBeUInteger; utxoCostPerByte: Coin; maxTxSize: CanBeUInteger; maxTxExecutionUnits: ExBudget | ExBudgetJson; maxCollateralInputs: CanBeUInteger; collateralPercentage: CanBeUInteger; minfeeRefScriptCostPerByte: Rational; executionUnitPrices: [ mem_price: CborPositiveRational, step_price: CborPositiveRational ] | { priceMemory: number; priceSteps: number; }; costModels: CostModels; } export declare const defaultTxBuilderProtocolParameters: Readonly<ValidatedTxBuilderProtocolParams>; export declare function isValidatedTxBuilderProtocolParams(stuff: any): stuff is ValidatedTxBuilderProtocolParams; export declare function completeTxBuilderProtocolParams(partial: TxBuilderProtocolParams | undefined): ValidatedTxBuilderProtocolParams;