UNPKG

@harmoniclabs/blockfrost-pluts

Version:

@blockfrost/blockfrost-js extension based on plu-ts types

62 lines (61 loc) 2.91 kB
import type { CanBeData, GenesisInfos, ISubmitTx, ITxRunnerProvider, IGetProtocolParameters } from "@harmoniclabs/buildooor"; import { UTxO, Hash32, Address, Value, Script, ProtocolParameters, ITxOutRef, IUTxO, TxOutRefStr, AddressStr, Hash28, Tx } from "@harmoniclabs/cardano-ledger-ts"; import { BlockfrostOptions } from "./BlockfrostOptions.js"; import { AddressInfos } from "./types/AddressInfos.js"; import { OgmiosRdmrExUnits } from "./utils/evaluatePlutusCosts.js"; import { BlockInfos } from "./types/BlockInfos.js"; type CanResolveToUTxO = IUTxO | ITxOutRef | TxOutRefStr; export type PaginationOptions = { count?: number; page?: number; order?: 'asc' | 'desc'; }; export declare function paginationOptsToStr({ count, page, order }: PaginationOptions): string; export type UTxOWithRefScriptHash = UTxO & { readonly refScriptHash?: Hash28; }; export declare class BlockfrostPluts implements ITxRunnerProvider, ISubmitTx, IGetProtocolParameters { readonly network: "mainnet" | "preview" | "preprod" | "sanchonet"; readonly url: string; readonly projectId: string; constructor({ projectId, customBackend }: BlockfrostOptions); /** @since 0.1.4 */ submitTx(tx: string | Tx): Promise<string>; /** @since 0.1.13 */ evaluatePlutusCosts(tx: string | Tx): Promise<OgmiosRdmrExUnits[]>; get(url: string): Promise<any>; /** @since 0.1.12 */ getChainTip(): Promise<BlockInfos>; /** @since 0.1.3 */ getGenesisInfos(): Promise<GenesisInfos>; /** @since 0.1.1 */ epochsParameters(epoch_no: number): Promise<ProtocolParameters>; /** @since 0.1.1 */ epochsLatestParameters(): Promise<ProtocolParameters>; /** @since 0.1.0 */ getProtocolParameters(): Promise<ProtocolParameters>; /** @since 0.1.0 */ resolveUtxos(utxos: CanResolveToUTxO[]): Promise<UTxO[]>; /** @since 0.1.0 */ resolveDatumHashes(hashes: Hash32[]): Promise<{ hash: string; datum: CanBeData; }[]>; /** @since 0.1.1 */ addressesInfos(address: AddressStr | Address): Promise<AddressInfos>; /** @since 0.1.1 */ addressInfos(address: AddressStr | Address): Promise<AddressInfos>; /** @since 0.1.1 */ addressTotalAmount(address: AddressStr | Address): Promise<Value>; addressTxs(addr: AddressStr | Address): Promise<Hash32[]>; /** @since 0.1.0 */ addressesUtxos(address: AddressStr | Address, pagination?: PaginationOptions): Promise<UTxOWithRefScriptHash[]>; getUtxos(address: AddressStr | Address, pagination?: PaginationOptions): Promise<UTxOWithRefScriptHash[]>; /** @since 0.1.0 */ addressUtxos(address: AddressStr | Address, pagination?: PaginationOptions): Promise<UTxOWithRefScriptHash[]>; /** @since 0.1.0 */ scriptsCbor(hash: string | Hash28): Promise<Script>; /** @since 0.1.2 */ resolveScriptHash(hash: string | Hash28): Promise<Script>; } export {};