import { TypeDef } from "../types/types"; import { ContractABIArgBasePre, ContractABIContract, ContractABIContractPre, ContractABIEvent, ContractABIEventPre, ContractABIFn, ContractABIMessage, ContractABIMessageBase, ContractABIMessagePre, ContractABI, ContractABIPre, ContractABIRange, ContractABIRangePre, ContractABIStorage, ContractABIStorageLayout, ContractABIStorageLayoutPre, ContractABIStoragePre, ContractABIStorageStruct, ContractABIStorageStructPre, ContractABITypePre } from './types'; import MetaRegistry from './MetaRegistry'; export default class ContractRegistry extends MetaRegistry { validateArgs(name: string, args: ContractABIArgBasePre[]): void; validateConstructors({ contract: { constructors } }: ContractABIPre): void; validateMessages({ contract: { messages } }: ContractABIPre): void; validateAbi(abi: ContractABIPre): void; createMessage(name: string, message: Partial & ContractABIMessageBase): ContractABIFn; convertAbi({ contract, storage }: ContractABIPre): ContractABI; convertArgs(args: ContractABIArgBasePre[]): any[]; convertType({ ty, display_name: displayNameIndices }: ContractABITypePre): TypeDef; convertContract({ constructors, messages, name, events, ...contract }: ContractABIContractPre): ContractABIContract; convertConstructors(constructors: ContractABIMessagePre[]): ContractABIMessage[]; convertMessage({ args, name, return_type: returnType, ...message }: ContractABIMessagePre): ContractABIMessage; convertEvent({ args }: ContractABIEventPre): ContractABIEvent; convertStorage(storage: ContractABIStoragePre): ContractABIStorage; convertStorageLayout(storageLayout: ContractABIStorageLayoutPre): ContractABIStorageLayout; convertStorageStruct({ 'struct.type': structType, 'struct.fields': structFields }: ContractABIStorageStructPre): ContractABIStorageStruct; convertStorageRange({ 'range.elem_type': type, ...range }: ContractABIRangePre): ContractABIRange; }