/// import { BinaryWriter, ContractParameterTypeModel, SerializableWire, SerializeWire, UInt160, UInt160Hex } from '@neo-one/client-common'; import { BaseState } from './BaseState'; import { ContractPropertyStateModel } from './ContractPropertyStateModel'; export interface ContractModelAdd { readonly hash?: UInt160; readonly version?: number; readonly script: Buffer; readonly parameterList: readonly ContractParameterTypeModel[]; readonly returnType: ContractParameterTypeModel; readonly contractProperties: ContractPropertyStateModel; readonly name: string; readonly codeVersion: string; readonly author: string; readonly email: string; readonly description: string; } export declare class ContractModel extends BaseState implements SerializableWire { readonly script: Buffer; readonly parameterList: readonly ContractParameterTypeModel[]; readonly returnType: ContractParameterTypeModel; readonly name: string; readonly codeVersion: string; readonly author: string; readonly email: string; readonly description: string; readonly contractProperties: ContractPropertyStateModel; readonly hasStorage: boolean; readonly hasDynamicInvoke: boolean; readonly payable: boolean; readonly serializeWire: SerializeWire; private readonly hashInternal; private readonly hashHexInternal; constructor({ version, script, parameterList, returnType, name, codeVersion, author, email, description, contractProperties, }: ContractModelAdd); get hash(): UInt160; get hashHex(): UInt160Hex; serializeWireBase(writer: BinaryWriter): void; } export declare const serializeContractWireBase: ({ writer, contract, publishVersion, }: { readonly writer: BinaryWriter; readonly contract: ContractModel; readonly publishVersion?: number | undefined; }) => void;