import { ApiObject } from './ApiRefResolver';
import { JsonNavigation, JsonItem } from './JsonNavigation';
export declare type Node = ApiObject;
export interface RefObject {
    $ref: string;
}
export declare type RefVisitor = (node: RefObject, nav: JsonNavigation) => Promise<JsonItem>;
export declare type ObjectVisitor = (node: ApiObject, nav: JsonNavigation) => Promise<JsonItem>;
export declare function isRef(node: Node): boolean;
export declare function visitRefObjects(node: ApiObject, refCallback: RefVisitor, nav?: JsonNavigation): Promise<JsonItem>;
export declare function walkObject(node: ApiObject, objectCallback: ObjectVisitor, nav?: JsonNavigation): Promise<JsonItem>;
