UNPKG

@helios-lang/compiler

Version:

Helios is a Domain Specific Language that compiles to Plutus-Core (i.e. Cardano on-chain validator scripts). Helios is a non-Haskell alternative to Plutus. With this library you can compile Helios scripts and build Cardano transactions, all you need to bu

187 lines 4.74 kB
/** * @returns {NamedNamespace} */ export function Cip67Namespace(): NamedNamespace; /** * @param {MultiValidatorInfo} info * @returns {NamedNamespace} */ export function ScriptContextNamespace(info: MultiValidatorInfo): NamedNamespace; /** * @typedef {import("@helios-lang/compiler-utils").Site} Site * @typedef {import("./common.js").InferenceMap} InferenceMap * @typedef {import("./common.js").DataType} DataType * @typedef {import("./common.js").EnumMemberType} EnumMemberType * @typedef {import("./common.js").Named} Named * @typedef {import("./common.js").Type} Type * @typedef {import("./common.js").Typed} Typed * @typedef {import("./common.js").InstanceMembers} InstanceMembers * @typedef {import("./common.js").TypeMembers} TypeMembers * @typedef {import("./common.js").TypeSchema} TypeSchema */ /** * Buitin Address type * @type {DataType} */ export const AddressType: DataType; /** * @type {DataType} */ export const DCertType: DataType; /** * Builtin Credential type * @type {DataType} */ export const SpendingCredentialType: DataType; /** * @type {DataType} */ export const TxOutputDatumType: DataType; /** * Base class for ScriptContext, ContractContext, Scripts and other "macro"-types */ export class MacroType extends Common { /** * @type {string[]} */ get fieldNames(): string[]; /** * @type {InstanceMembers} */ get instanceMembers(): import("./common.js").InstanceMembers; /** * @type {string} */ get name(): string; /** * @type {string} */ get path(): string; /** * @type {TypeMembers} */ get typeMembers(): import("./common.js").TypeMembers; /** * @type {DataType} */ get asDataType(): import("./common.js").DataType; /** * @type {Named} */ get asNamed(): import("./common.js").Named; /** * @type {Type} */ get asType(): import("./common.js").Type; /** * @param {Set<string>} parents * @returns {TypeSchema} */ toSchema(parents?: Set<string>): TypeSchema; /** * @param {Site} site * @param {InferenceMap} map * @param {null | Type} type * @returns {Type} */ infer(site: Site, map: InferenceMap, type: null | Type): Type; /** * @param {Type} other * @returns {boolean} */ isBaseOf(other: Type): boolean; /** * @returns {Typed} */ toTyped(): Typed; } /** * @typedef {{[name: string]: ScriptHashType}} ScriptTypes */ /** * @typedef {{ * currentScript: string * scriptTypes?: ScriptTypes * }} MultiValidatorInfo */ /** * @implements {DataType} */ export class ScriptsType extends MacroType implements DataType { /** * @param {ScriptTypes} scripts */ constructor(scripts: ScriptTypes); /** * @private * @readonly * @type {{[name: string]: Typed}} */ private readonly _scripts; /** * @returns {boolean} */ isEmpty(): boolean; } /** * Builtin ScriptPurpose type (Minting| Spending| Rewarding | Certifying) * @type {DataType} */ export const ScriptPurposeType: DataType; /** * Builtin StakingCredential type * @type {DataType} */ export const StakingCredentialType: DataType; /** * Builtin StakingPurpose type (Rewarding or Certifying) * @type {DataType} */ export const StakingPurposeType: DataType; /** * Builtin Tx type * @type {DataType} */ export const TxType: DataType; /** * Builtin TxId type * @type {DataType} */ export const TxIdType: DataType; /** * Builtin TxInput type * @type {DataType} */ export const TxInputType: DataType; /** * Builtin TxOutput type * @type {DataType} */ export const TxOutputType: DataType; /** * Builtin TxOutputId type * @type {DataType} */ export const TxOutputIdType: DataType; export const MixedArgsType: any; export type Site = import("@helios-lang/compiler-utils").Site; export type InferenceMap = import("./common.js").InferenceMap; export type DataType = import("./common.js").DataType; export type EnumMemberType = import("./common.js").EnumMemberType; export type Named = import("./common.js").Named; export type Type = import("./common.js").Type; export type Typed = import("./common.js").Typed; export type InstanceMembers = import("./common.js").InstanceMembers; export type TypeMembers = import("./common.js").TypeMembers; export type TypeSchema = import("./common.js").TypeSchema; export type ScriptTypes = { [name: string]: ScriptHashType; }; export type MultiValidatorInfo = { currentScript: string; scriptTypes?: ScriptTypes; }; import { NamedNamespace } from "./common.js"; import { Common } from "./common.js"; import { ScriptHashType } from "./hashes.js"; //# sourceMappingURL=tx.d.ts.map