import { type TSchema } from '@scalar/typebox'; export declare const ReferenceObjectExtensionsSchema: import("@scalar/typebox").TObject<{ /** Indicates the current status of the reference resolution. Can be either 'loading' while fetching the reference or 'error' if the resolution failed. */ $status: import("@scalar/typebox").TOptional, import("@scalar/typebox").TLiteral<"error">]>>; /** Indicates whether this reference should be resolved globally across all documents, rather than just within the current document context. */ $global: import("@scalar/typebox").TOptional; }>; /** * A simple object to allow referencing other components in the OpenAPI Description, internally and externally. * * The $ref string value contains a URI RFC3986, which identifies the value being referenced. * * See the rules for resolving Relative References. */ export declare const ReferenceObjectSchema: import("@scalar/typebox").TIntersect<[import("@scalar/typebox").TObject<{ /** REQUIRED. The reference identifier. This MUST be in the form of a URI. */ $ref: import("@scalar/typebox").TString; /** A short summary which by default SHOULD override that of the referenced component. If the referenced object-type does not allow a summary field, then this field has no effect. */ summary: import("@scalar/typebox").TOptional; /** A description which by default SHOULD override that of the referenced component. CommonMark syntax MAY be used for rich text representation. If the referenced object-type does not allow a description field, then this field has no effect. */ description: import("@scalar/typebox").TOptional; }>, import("@scalar/typebox").TObject<{ /** Indicates the current status of the reference resolution. Can be either 'loading' while fetching the reference or 'error' if the resolution failed. */ $status: import("@scalar/typebox").TOptional, import("@scalar/typebox").TLiteral<"error">]>>; /** Indicates whether this reference should be resolved globally across all documents, rather than just within the current document context. */ $global: import("@scalar/typebox").TOptional; }>]>; /** * A simple object to allow referencing other components in the OpenAPI Description, internally and externally. * * The $ref string value contains a URI RFC3986, which identifies the value being referenced. * * See the rules for resolving Relative References. */ export type ReferenceObject = { /** REQUIRED. The reference identifier. This MUST be in the form of a URI. */ '$ref': string; /** A short summary which by default SHOULD override that of the referenced component. If the referenced object-type does not allow a summary field, then this field has no effect. */ summary?: string; /** A description which by default SHOULD override that of the referenced component. CommonMark syntax MAY be used for rich text representation. If the referenced object-type does not allow a description field, then this field has no effect. */ description?: string; /** Indicates the current status of the reference resolution. Can be either 'loading' while fetching the reference or 'error' if the resolution failed. */ '$status'?: 'loading' | 'error'; /** Indicates whether this reference should be resolved globally across all documents, rather than just within the current document context. */ '$global'?: boolean; }; /** * Object or Reference Object with a resolved `$ref-value`. * * `$ref-value` is kept optional on purpose (mirroring the schema position in `schema.ts`): an * unresolved reference — for example a sparse chunk `$ref` produced by the server store — is just * `{ $ref }` with no resolved value yet. If it were required, such a value would match neither * union branch, so coercion would fall back to the plain-object branch and silently drop the * `$ref`. With it optional the `{ $ref }` matches the reference branch and is preserved unchanged. * * The bundler/proxy still populates `$ref-value` for resolved documents, so `getResolvedRef` keeps * returning the value in practice. */ export declare const reference: (schema: T) => import("@scalar/typebox").TIntersect<[import("@scalar/typebox").TIntersect<[import("@scalar/typebox").TObject<{ /** REQUIRED. The reference identifier. This MUST be in the form of a URI. */ $ref: import("@scalar/typebox").TString; /** A short summary which by default SHOULD override that of the referenced component. If the referenced object-type does not allow a summary field, then this field has no effect. */ summary: import("@scalar/typebox").TOptional; /** A description which by default SHOULD override that of the referenced component. CommonMark syntax MAY be used for rich text representation. If the referenced object-type does not allow a description field, then this field has no effect. */ description: import("@scalar/typebox").TOptional; }>, import("@scalar/typebox").TObject<{ /** Indicates the current status of the reference resolution. Can be either 'loading' while fetching the reference or 'error' if the resolution failed. */ $status: import("@scalar/typebox").TOptional, import("@scalar/typebox").TLiteral<"error">]>>; /** Indicates whether this reference should be resolved globally across all documents, rather than just within the current document context. */ $global: import("@scalar/typebox").TOptional; }>]>, import("@scalar/typebox").TObject<{ '$ref-value': T extends import("@scalar/typebox").TOptional ? import("@scalar/typebox").TOptional : import("@scalar/typebox").Ensure>; }>]>; export type ReferenceType = Value | (ReferenceObject & { '$ref-value'?: Value; }); //# sourceMappingURL=reference.d.ts.map