sevm
Version:
A Symbolic Ethereum Virtual Machine (EVM) bytecode decompiler & analyzer library & CLI
64 lines (63 loc) • 1.37 kB
TypeScript
import { Contract } from '.';
import { type Stmt } from './ast';
import type { IEvents } from './ast/log';
import type { IStore } from './ast/storage';
/**
*
* @param strings
* @param nodes
* @returns
*/
export declare function sol(strings: TemplateStringsArray, ...nodes: unknown[]): string;
/**
*
* @param stmts
* @param spaces
* @returns
*/
export declare function solStmts(stmts: Stmt[], spaces?: number): string;
/**
*
* @param events
* @returns
*/
export declare function solEvents(events: IEvents, spaces?: number): string;
/**
*
* @param variables
* @returns
*/
export declare function solVars(variables: IStore['variables']): string;
/**
*
* @param mappings
* @returns
*/
export declare function solStructs(mappings: IStore['mappings']): string;
/**
*
* @param mappings
* @returns
*/
export declare function solMappings(mappings: IStore['mappings']): string;
declare function solContract(this: Contract, options?: {
license?: string | null;
pragma?: boolean;
contractName?: string;
}): string;
declare module '.' {
interface Contract {
/**
* Decompiles the `Contract` into Solidity-like source code.
*/
solidify(...args: Parameters<typeof solContract>): string;
}
}
declare module './ast' {
interface Tag {
/**
*/
sol(): string;
}
}
export {};