@harmoniclabs/blockfrost-pluts
Version:
@blockfrost/blockfrost-js extension based on plu-ts types
62 lines (61 loc) • 2.91 kB
TypeScript
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 {};