gotake-contracts
Version:
TypeChain generated types and ABIs for GoTake contracts
66 lines (56 loc) • 1.29 kB
text/typescript
// ABI type definitions that are framework-agnostic
export interface ABIFunction {
type: 'function';
name: string;
inputs: ABIInput[];
outputs: ABIOutput[];
stateMutability: 'pure' | 'view' | 'nonpayable' | 'payable';
}
export interface ABIEvent {
type: 'event';
name: string;
inputs: ABIInput[];
anonymous: boolean;
}
export interface ABIError {
type: 'error';
name: string;
inputs: ABIInput[];
}
export interface ABIConstructor {
type: 'constructor';
inputs: ABIInput[];
stateMutability: 'nonpayable' | 'payable';
}
export interface ABIFallback {
type: 'fallback';
stateMutability: 'nonpayable' | 'payable';
}
export interface ABIReceive {
type: 'receive';
stateMutability: 'payable';
}
export interface ABIInput {
name: string;
type: string;
indexed?: boolean;
components?: ABIInput[];
internalType?: string;
}
export interface ABIOutput {
name: string;
type: string;
components?: ABIOutput[];
internalType?: string;
}
export type ABIEntry =
| ABIFunction
| ABIEvent
| ABIError
| ABIConstructor
| ABIFallback
| ABIReceive;
export type ContractABI = ABIEntry[];
export interface ABICollection {
[contractName: string]: ContractABI;
}