@ardier16/q-js-sdk
Version:
Typescript Library to interact with Q System Contracts
51 lines (50 loc) • 1.65 kB
TypeScript
import { KeyValuePair } from '../types';
import { AParameters } from '../web3-contracts/AParameters';
import { BaseContractInstance } from './BaseContractInstance';
export declare type ParameterType = 'Uint' | 'String' | 'Bool' | 'Addr' | 'Bytes32';
/**
* [Abstract Parameters contract](@system-contracts-repo/@network/AParameters/)
*/
/**
* Abstract Parameters instance to interact with Constitution, EPDR and EPQFI Parameters contracts.
* See [onchain documentation](@system-contracts-repo/@network/AParameters/) for more details.
*/
export declare class BaseParametersInstance<T extends AParameters> extends BaseContractInstance<T> {
getUintKeys(): Promise<string[]>;
/**
* Get uint value
* @param key key of value
* @returns value
*/
getUint(key: string): Promise<string>;
/**
* Get address keys
* @returns keys
*/
getAddrKeys(): Promise<string[]>;
/**
* Get address value
* @param key key of value
* @returns value
*/
getAddr(key: string): Promise<string>;
/**
* Get keys with specific type
* @param type type of keys
* @returns keys
*/
getKeys(type: ParameterType): Promise<string[]>;
/**
* Get parameter with specific type and key
* @param type parameter type
* @param key parameter key
* @returns parameter
*/
getParameter(type: ParameterType, key: string): Promise<string>;
/**
* Get all parameters with specific type
* @param type specific type
* @returns parameters (key-value array)
*/
getParameters(type: ParameterType): Promise<KeyValuePair<string, string>[]>;
}