@zlattice/lattice-js
Version:
Lattice blockchain TypeScript SDK with dual module support (CJS + ESM)
63 lines • 2.43 kB
TypeScript
import { LatticeAbi } from "../../utils/abi.js";
import { BuiltinContract, type writeTraceabilityRequest } from "./types.js";
interface Traceability {
/**
* Create a business
* @returns The address of the business
*/
createBusiness(): string;
/**
* Add a protocol to the business
* @param protocolSuite The protocol suite
* @param bytes The bytes of the protocol
* @returns The address of the business
*/
createProtocol(protocolSuite: number, bytes: Buffer): Promise<string>;
/**
* Read a protocol
* @param protocolUri The protocol uri
* @returns The bytes of the protocol
*/
readProtocol(protocolUri: number): Promise<string>;
/**
* Update a protocol
* @param protocolUri The protocol uri
* @param bytes The bytes of the protocol
* @returns The address of the business
*/
updateProtocol(protocolUri: number, bytes: Buffer): Promise<string>;
/**
* Write a traceability
* @param request The request
* @returns The address of the business
*/
writeTraceability(request: writeTraceabilityRequest): Promise<string>;
writeTraceabilityBatch(requests: writeTraceabilityRequest[]): Promise<string>;
/**
* Read a traceability
* @param dataId The data id
* @param businessContractAddress The business contract address
* @returns The traceability
*/
readTraceability(dataId: string, businessContractAddress: string): Promise<string>;
}
declare class TraceabilityContract implements Traceability {
private readonly iface;
private readonly builtinContract;
/**
* The address for creating business
*/
static readonly ADDRESS_FOR_CREATE_BUSINESS = "zltc_QLbz7JHiBTspS9WTWJUrbNsB5wbENMweQ";
constructor();
getIface(): LatticeAbi;
getBuiltinContract(): BuiltinContract;
createBusiness(): string;
createProtocol(protocolSuite: number, bytes: Buffer): Promise<string>;
readProtocol(protocolUri: number): Promise<string>;
updateProtocol(protocolUri: number, bytes: Buffer): Promise<string>;
writeTraceability(request: writeTraceabilityRequest): Promise<string>;
writeTraceabilityBatch(requests: writeTraceabilityRequest[]): Promise<string>;
readTraceability(dataId: string, businessContractAddress: string): Promise<string>;
}
export { TraceabilityContract };
//# sourceMappingURL=traceability.d.ts.map