import { DoubleMapTypeV3, MapTypeV3, PlainTypeV3, StorageFunctionModifierV3 } from '../../interfaces/metadata'; import { AnyNumber } from '../../types'; import Enum from '../../codec/Enum'; import Struct from '../../codec/Struct'; import Vec from '../../codec/Vec'; import Bytes from '../../primitive/Bytes'; import Text from '../../primitive/Text'; export declare class StorageFunctionType extends Enum { constructor(value?: any, index?: number); /** * @description The value as a mapped value */ readonly asDoubleMap: DoubleMapTypeV3; /** * @description The value as a mapped value */ readonly asMap: MapTypeV3; /** * @description The value as a [[Type]] value */ readonly asType: PlainTypeV3; /** * @description `true` if the storage entry is a doublemap */ readonly isDoubleMap: boolean; /** * @description `true` if the storage entry is a map */ readonly isMap: boolean; /** * @description `true` if the storage entry is a plain type */ readonly isPlainType: boolean; /** * @description Returns the string representation of the value */ toString(): string; } export interface StorageFunctionMetadataValue { name: string | Text; modifier: StorageFunctionModifierV3 | AnyNumber; type: StorageFunctionType; fallback: Bytes; documentation: Vec | string[]; } /** * @name StorageFunctionMetadata * @description * The definition of a storage function */ export declare class StorageFunctionMetadata extends Struct { constructor(value?: StorageFunctionMetadataValue | Uint8Array); /** * @description The [[Text]] documentation */ readonly documentation: Vec; /** * @description The [[Bytes]] fallback default */ readonly fallback: Bytes; /** * @description The [[StorageFunctionModifierV3]] for arguments */ readonly modifier: StorageFunctionModifierV3; /** * @description The call name */ readonly name: Text; /** * @description The [[StorageFunctionType]] */ readonly type: StorageFunctionType; }