import { TreeVisitor, ValidRecipeReturnType } from "../visitor";
import { SourceFile } from "../tree";
import { Json } from "./tree";
import { Draft } from "mutative";
export declare class JsonVisitor
extends TreeVisitor {
isAcceptable(sourceFile: SourceFile): Promise;
protected visitArray(array: Json.Array, p: P): Promise;
protected visitDocument(document: Json.Document, p: P): Promise;
protected visitEmpty(empty: Json.Empty, p: P): Promise;
protected visitIdentifier(identifier: Json.Identifier, p: P): Promise;
protected visitLiteral(literal: Json.Literal, p: P): Promise;
protected visitMember(member: Json.Member, p: P): Promise;
protected visitObject(jsonObject: Json.Object, p: P): Promise;
visitRightPadded(right: Json.RightPadded, p: P): Promise | undefined>;
visitSpace(space: Json.Space, p: P): Promise;
protected produceJson(before: Json | undefined, p: P, recipe?: (draft: Draft) => ValidRecipeReturnType> | PromiseLike>>): Promise;
protected accept(t: Json, p: P): Promise;
}
//# sourceMappingURL=visitor.d.ts.map