import type { OpenAPIV3 } from 'openapi-types'; import { Liquid } from 'liquidjs'; import type { ICodeOutput } from './plugin.mjs'; type IReferenceObject = OpenAPIV3.ReferenceObject; type ISchemaObject = OpenAPIV3.SchemaObject; type IArraySchemaObject = OpenAPIV3.ArraySchemaObject; type IRequestBodyObject = OpenAPIV3.RequestBodyObject; type IResponseObject = OpenAPIV3.ResponseObject; type IComponentsObject = OpenAPIV3.ComponentsObject; type IResponsesObject = OpenAPIV3.ResponsesObject; export interface ICodeWithMetadata { code: string; imports: string[]; dependencies: string[]; } export interface IObjectProps extends Omit { key: string; value: string; comment?: string; required?: boolean; hasDiscriminator?: boolean; } export declare const liquid: Liquid; export declare const OBJECT_TEMPLATE: import("liquidjs").Template[]; export declare const COMMENTS_TEMPLATE: import("liquidjs").Template[]; export declare const CODE_WITH_IMPORTS_TEMPLATE: import("liquidjs").Template[]; export declare const INTERFACE_TEMPLATE: import("liquidjs").Template[]; export declare function shouldCreateInterface(schema: ISchemaObject | IReferenceObject): schema is ISchemaObject; export declare function hasDiscriminator(schema?: ISchemaObject | IReferenceObject, components?: IComponentsObject): boolean; export interface IProcessAllOfReturn { schema: ISchemaObject; extensions: IReferenceObject[]; } export declare function processAllOf(schema: ISchemaObject): IProcessAllOfReturn; export declare function createReferenceNode(ref: string, originalRef: string): ICodeWithMetadata; export declare function createObjectProperties(item: ISchemaObject, originalRef: string, components?: IComponentsObject): IObjectProps[]; export declare function createObject(item: ISchemaObject, originalRef: string, components?: IComponentsObject): ICodeWithMetadata; export declare function createFreeFormProperty(valueType?: ICodeWithMetadata): IObjectProps; export declare function resolveValue(schema: ISchemaObject | IReferenceObject, originalRef: string): ICodeWithMetadata; export declare function createArray(item: IArraySchemaObject, originalRef: string): ICodeWithMetadata; export declare function createScalarNode(item: ISchemaObject, originalRef: string): ICodeWithMetadata; export interface ICreateInterfaceProps { name: string; originalRef: string; schema: ISchemaObject; components: IComponentsObject; } export declare function createInterface(props: ICreateInterfaceProps): ICodeWithMetadata; export declare function createTypeDeclaration(name: string, originalRef: string, schema: ISchemaObject | IReferenceObject): ICodeWithMetadata; export declare function getRequestResponseSchema(schema: IRequestBodyObject | IReferenceObject | IResponseObject): IReferenceObject | ISchemaObject | undefined; export declare function createRequestBodyDefinitions(components?: IComponentsObject): Record; export declare function createSchemaDefinitions(components?: IComponentsObject, filter?: string[]): Record; export declare function createResponseDefinitions(components?: IComponentsObject): Record; export declare function getReqResTypes(responsesOrRequests: Array<[string, IResponseObject | IReferenceObject | IRequestBodyObject]>, originalRef: string): ICodeWithMetadata; export declare function getOkResponses(responses: IResponsesObject, originalRef: string): ICodeWithMetadata; export declare function getErrorResponses(responses: IResponsesObject, originalRef: string): ICodeWithMetadata; export {};