import { Transform } from 'assemblyscript/transform';
import { Parser, Program } from 'assemblyscript/dist/assemblyscript.js';
export default class MyTransform extends Transform {
    private methodsByClass;
    private classDeclarations;
    private allEvents;
    private eventsUsedInClass;
    private program;
    private currentClassName;
    private collectingEvent;
    private currentEventName;
    private isEventClass;
    afterParse(parser: Parser): Promise<void>;
    afterInitialize(program: Program): void;
    private buildAbiPerClass;
    private buildDtsForClass;
    private buildExecuteMethod;
    private checkUnusedEvents;
    private visitStatement;
    private visitClassDeclaration;
    private visitMethodDeclaration;
    private visitFieldDeclaration;
    private parseEventConstructor;
    private getInternalNameForMethodDeclaration;
    private parseDecoratorArgs;
    private parseParamDefs;
    private parseParamDefinition;
    private isParamDefinition;
    /**
     * Convert a user-supplied type string into our internal ABIDataTypes enum.
     */
    private mapToAbiDataType;
    private mapAbiTypeToTypescript;
    private toPascalCase;
}
