UNPKG

@simbachain/simbats

Version:
72 lines 2.37 kB
import { RequestHandler } from "./request_handler"; /** * this class is used to check param types before making HTTP call for contract methods */ declare class ParamCheckingContract { appName: string; contractName: string; baseApiUrl: string; metadata: Record<any, any>; paramsRestricted: Record<any, any> | null; requestHandler: RequestHandler; constructor(appName: string, contractName: string, baseApiUrl: string, metadata?: Record<any, any>); /** * gives the true type of a variable, since pretty much everything in JS is just an "object" * @param someObject * @returns {string} */ trueType(someObject: any): string; /** * retrieves metadata for this.contractName * @returns {Promise<Record<any, any>>} */ getMetadata(): Promise<Record<any, any>>; /** * specifies whether a param is an array * @param param * @returns {boolean} */ isArray(param: string): boolean; /** * specifies what variables are permitted as elements of an array * @param arrString * @returns {Record<number | string, string>} */ arrayRestrictions(arrString: string): Record<number | string, string>; /** * returns number of dimensions for an array * @param param * @param dims * @returns {number} */ getDimensions(param: string, dims?: number): number; /** * specifies all param restrictions for all contract methods * @returns {Promise<Record<any, any> | void>} */ paramRestrictions(): Promise<Record<any, any> | void>; /** * returns true if passed array argument meets param restrictions * @param arr * @param paramName * @param paramRestrictionsObj * @param level * @returns {boolean | Error} */ private checkArrayRestrictions; /** * returns true if a passed uint argument meets param restrictions * @param paramValue * @returns {boolean | Error} */ private checkUintRestriction; /** * validates all passed arguments for a method call * @param methodName * @param inputs * @returns {Promise<boolean | Error>} */ validateParams(methodName: string, inputs: Record<any, any> | null): Promise<boolean | Error>; } export { ParamCheckingContract, }; //# sourceMappingURL=param_checking_contract.d.ts.map