import { UTxO, Script, IUTxO, NativeScript, ScriptType } from "@harmoniclabs/cardano-ledger-ts";
import { ITxBuildInputRefScript, NormalizedITxBuildInputRefScript } from "./ITxBuildInputRefScript.js";
import { ITxBuildInputInlineScript, NormalizedITxBuildInputInlineScript } from "./ITxBuildInputInlineScript.js";
export interface ITxBuildInput {
    utxo: IUTxO;
    /** @deprecated use `referenceScript` instead */
    referenceScriptV2?: ITxBuildInputRefScript;
    /** can have undefined datum only if plutus script is v3 or higher */
    referenceScript?: ITxBuildInputRefScript;
    /** can have undefined datum only if plutus script is v3 or higher */
    inputScript?: ITxBuildInputInlineScript;
    nativeScript?: NativeScript | Script;
}
export interface NormalizedITxBuildInput extends ITxBuildInput {
    utxo: UTxO;
    referenceScript?: NormalizedITxBuildInputRefScript;
    inputScript?: NormalizedITxBuildInputInlineScript;
    nativeScript?: Script<"NativeScript" | ScriptType.NativeScript>;
}
export declare function normalizeITxBuildInput(input: ITxBuildInput): NormalizedITxBuildInput;
/**
 * @deprecated
 * use `normalizeITxBuildInput` instead
 */
export declare function cloneITxBuildInput({ utxo, referenceScript: ref, inputScript: inScript, nativeScript }: ITxBuildInput): ITxBuildInput;
