import { ConcordiumGRPCClient } from './grpc/GRPCClient.js'; import * as BlockHash from './types/BlockHash.js'; import * as ContractAddress from './types/ContractAddress.js'; /** * Namespace with types for CIS-0 standard contracts */ export declare namespace CIS0 { /** Identifier to query for support, f.x. 'CIS-2' */ export type StandardIdentifier = 'CIS-0' | 'CIS-1' | 'CIS-2' | 'CIS-3' | string; /** Possible response types for a query */ export enum SupportType { /** The standard is not supported */ NoSupport = 0, /** The standard is supported */ Support = 1, /** The standard is supported by another contract */ SupportBy = 2 } type SupportResponse = { /** The {@link SupportType} of the support response */ type: T; }; /** The standard is not supported */ export type NoSupport = SupportResponse; /** The standard is supported */ export type Support = SupportResponse; /** The standard is supported by another contract located at `address` */ export type SupportBy = SupportResponse & { /** The address supporting the standard queried */ addresses: ContractAddress.Type[]; }; /** Union of the different possible support query results. */ export type SupportResult = NoSupport | Support | SupportBy; export {}; } /** * Queries a CIS-0 contract for support for a {@link CIS0.StandardIdentifier}. * * @param {ConcordiumGRPCClient} grpcClient - The client to be used for the query. * @param {ContractAddress.Type} contractAddress - The address of the contract to query. * @param {CIS0.StandardIdentifier} standardId - The standard identifier to query for support in contract. * @param {BlockHash.Type} [blockHash] - The hash of the block to query at. * * @throws If the query could not be invoked successfully. * * @returns {CIS0.SupportResult} The support result of the query, or `undefined` if the contract does not support CIS-0. */ export declare function cis0Supports(grpcClient: ConcordiumGRPCClient, contractAddress: ContractAddress.Type, standardId: CIS0.StandardIdentifier, blockHash?: BlockHash.Type): Promise; /** * Queries a CIS-0 contract for support for a {@link CIS0.StandardIdentifier}. * * @param {ConcordiumGRPCClient} grpcClient - The client to be used for the query. * @param {ContractAddress.Type} contractAddress - The address of the contract to query. * @param {CIS0.StandardIdentifier[]} standardIds - The standard identifiers to query for support in contract. * @param {BlockHash.Type} [blockHash] - The hash of the block to query at. * * @throws If the query could not be invoked successfully. * * @returns {CIS0.SupportResult[]} The support results of the query ordered by the ID's supplied by the `ids` param, or `undefined` if the contract does not support CIS-0. */ export declare function cis0Supports(grpcClient: ConcordiumGRPCClient, contractAddress: ContractAddress.Type, standardIds: CIS0.StandardIdentifier[], blockHash?: BlockHash.Type): Promise;