import { Compilation } from "@truffle/codec/dist/lib/compilations";
export interface Breakpoint {
    compilationId: string;
    sourcePath: string;
    line: number;
}
export declare enum Command {
    Initialize = "initialize",
    StepOver = "stepOver",
    StepInto = "stepInto",
    StepOut = "stepOut",
    StepNext = "stepNext",
    StepInstruction = "stepInstruction",
    AddBreakpoint = "setBreakpoint",
    RemoveBreakpoint = "removeBreakpoint",
    ContinueUntilBreakpoint = "continueUntilBreakpoint",
    RemoveAllBreakpoints = "removeAllBreakpoints",
    Variables = "variables",
    Stacktrace = "stackTrace",
    Reset = "reset"
}
export interface InitArguments {
    providerURL: string;
    txnHash: string;
    chainId: string;
    shimmedCompilations: Compilation[];
}
export interface Location {
    lines: Lines;
    compilationId: string;
    length: number;
    sourcePath: string;
}
export interface Variables {
    builtin: Variable[];
    global: Variable[];
    contract: Variable[];
    local: Variable[];
}
export interface Variable {
    name: string;
    raw: any;
}
export interface Stackframe {
    functionName?: string;
    contractName: string;
    address: string;
    isConstructor: boolean;
    type: string;
    location: {
        source: {
            id: string;
            sourcePath: string;
            internal: boolean;
        };
        sourceRange: {
            start: number;
            length: number;
            lines: Lines;
        };
        node: {
            id: number;
        };
    };
}
export interface Lines {
    start: Line;
    end: Line;
}
export interface Line {
    line: number;
    column: number;
}
export interface TransactionInfo {
    block: any;
    chainID: number;
    code: any;
    trace: any;
    transaction: any;
    transactionReceipt: any;
}
