import { OpenAPIDocument, RouterPlugin } from '../types.cjs';
export interface SwaggerUIOpts {
    spec?: OpenAPIDocument;
    dom_id?: string;
    displayOperationId?: boolean;
    tryItOutEnabled?: boolean;
    requestSnippetsEnabled?: boolean;
    displayRequestDuration?: boolean;
    defaultModelRendering?: 'model' | 'example' | 'schema';
    defaultModelExpandDepth?: number;
    defaultModelsExpandDepth?: number;
    docExpansion?: 'none' | 'list' | 'full';
    filter?: boolean;
    maxDisplayedTags?: number;
    showExtensions?: boolean;
    showCommonExtensions?: boolean;
    tagsSorter?: 'alpha';
    operationsSorter?: 'alpha';
    showTags?: boolean;
    showMutatedRequest?: boolean;
    oauth2RedirectUrl?: string;
    validatorUrl?: string;
    deepLinking?: boolean;
    presets?: any[];
    plugins?: any[];
    layout?: string;
}
export type OpenAPIPluginOptions = {
    oasEndpoint: string | false;
    swaggerUIEndpoint: string | false;
    swaggerUIOpts: SwaggerUIOpts;
};
export declare function useOpenAPI({ oasEndpoint, swaggerUIEndpoint, swaggerUIOpts, }: OpenAPIPluginOptions): RouterPlugin<any>;
