aboutsummaryrefslogtreecommitdiffstats
path: root/packages/utils/src/abi_encoder/abstract_data_types/interfaces.ts
blob: 2f2f60871e0d2617017205571480fff384f36bf5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import { DataItem } from 'ethereum-types';

import { RawCalldata } from '../calldata/raw_calldata';

import { DataType } from './data_type';

export interface DataTypeFactory {
    create: (dataItem: DataItem, parentDataType?: DataType) => DataType;
}

export interface DataTypeStaticInterface {
    matchType: (type: string) => boolean;
    encodeValue: (value: any) => Buffer;
    decodeValue: (rawCalldata: RawCalldata) => any;
}

export interface MemberIndexByName {
    [key: string]: number;
}