import * as Effect from 'effect/Effect';
import type * as OpenApiParser from './OpenApiParser.js';
import type * as SchemaParser from './SchemaParser.js';
declare const ReferenceResolutionError_base: new = {}>(args: import("effect/Types").Equals extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => import("effect/Cause").YieldableError & {
readonly _tag: "ReferenceResolutionError";
} & Readonly;
/**
* Error when resolving references
*
* @since 1.0.0
* @category Errors
*/
export declare class ReferenceResolutionError extends ReferenceResolutionError_base<{
readonly message: string;
}> {
}
/**
* Parsed reference information
*
* @since 1.0.0
* @category Models
*/
export interface ParsedRef {
readonly type: 'component';
readonly schemaName: string;
}
/**
* Parse a $ref string to extract schema name
*
* @since 1.0.0
* @category Parsing
*/
export declare const parseRefString: (ref: string) => Effect.Effect;
/**
* Resolve a schema, following $ref references
*
* @since 1.0.0
* @category Resolution
*/
export declare const resolveSchema: (schema: OpenApiParser.SchemaObject, registry: SchemaParser.SchemaRegistry, visited?: ReadonlySet) => Effect.Effect;
export {};
//# sourceMappingURL=ReferenceResolver.d.ts.map