import { ClassDeclaration, FieldDeclaration, DiagnosticEmitter } from "assemblyscript"; import { TransformVisitor } from "visitor-as"; import { AskConfig } from "../config"; /** * PackedLayoutVisitor traversal `@packedLayout` class and implements PackedLayout interface for it. * Note: Don't reuse a visitor if you have not reset the inner state. */ export declare class PackedLayoutVisitor extends TransformVisitor { readonly emitter: DiagnosticEmitter; readonly config: AskConfig; private fields; private hasBase; constructor(emitter: DiagnosticEmitter, config: AskConfig); visitClassDeclaration(node: ClassDeclaration): ClassDeclaration; visitFieldDeclaration(node: FieldDeclaration): FieldDeclaration; private genPackedLayout; private genPullPacked; private genPushPacked; private genClearPacked; }