import type { PageMetadata } from "@speakeasy-api/docs-md-shared/types";
import type { FrameworkConfig } from "../types/compilerConfig.ts";
import type { RendererConstructorArgs, RendererCreateCodeArgs, RendererCreateCodeSamplesSectionArgs, RendererCreateDebugPlaceholderArgs, RendererCreateExpandableBreakoutArgs, RendererCreateExpandablePropertyArgs, RendererCreateFrontMatterDisplayTypeArgs, RendererCreateHeadingArgs, RendererCreateOperationArgs, RendererCreateParametersSectionArgs, RendererCreatePillArgs, RendererCreateRequestSectionArgs, RendererCreateResponsesArgs, RendererCreateSectionArgs, RendererCreateSectionContentArgs, RendererCreateSectionTitleArgs, RendererCreateSecuritySectionArgs, RendererCreateTabbedSectionArgs, RendererCreateTabbedSectionTabArgs, SiteBuildPagePathArgs, SiteGetRendererArgs } from "./base.ts";
import { MarkdownRenderer, MarkdownSite } from "./markdown.ts";
export declare class MdxSite extends MarkdownSite {
    #private;
    constructor(compilerConfig: FrameworkConfig);
    buildPagePath(...[slug, { appendIndex }]: SiteBuildPagePathArgs): string;
    protected getRenderer(...[options]: SiteGetRendererArgs): MdxRenderer;
    processPageMetadata(pageMetadata: PageMetadata[]): void;
}
declare class MdxRenderer extends MarkdownRenderer {
    #private;
    constructor(options: RendererConstructorArgs, compilerConfig: FrameworkConfig);
    protected getIdSeparator(): string;
    render(): {
        contents: string;
        metadata: PageMetadata | undefined;
    };
    createHeading(...[level, text, { escape, id, append },]: RendererCreateHeadingArgs): string;
    createCode(...[text, options]: RendererCreateCodeArgs): string;
    createPill(...[variant, cb, { append }]: RendererCreatePillArgs): string;
    createOperationSection(...args: RendererCreateOperationArgs): void;
    protected handleCreateOperationTitle(cb: () => void): void;
    protected handleCreateOperationSummary(cb: () => void): void;
    protected handleCreateOperationDescription(cb: () => void): void;
    createCodeSamplesSection(...[cb]: RendererCreateCodeSamplesSectionArgs): void;
    createSecuritySection(...args: RendererCreateSecuritySectionArgs): void;
    createParametersSection(...args: RendererCreateParametersSectionArgs): void;
    createRequestSection(...args: RendererCreateRequestSectionArgs): void;
    createResponsesSection(...args: RendererCreateResponsesArgs): void;
    protected handleCreateRequestDisplayType(cb: () => void): void;
    protected handleCreateRequestDescription(cb: () => void): void;
    protected handleCreateRequestExamples(cb: () => void): void;
    protected handleCreateRequestDefaultValue(cb: () => void): void;
    protected handleCreateResponseDisplayType(cb: () => void): void;
    protected handleCreateResponseDescription(cb: () => void): void;
    protected handleCreateResponseExamples(cb: () => void): void;
    protected handleCreateResponseDefaultValue(cb: () => void): void;
    protected handleCreateSecurity(cb: () => void): void;
    protected handleCreateParameters(cb: () => void): void;
    protected handleCreateBreakouts(cb: () => void): void;
    protected handleCreateExpandableBreakout(...[{ hasFrontMatter, createTitle, createDescription, createExamples, createDefaultValue, isTopLevel, },]: RendererCreateExpandableBreakoutArgs): void;
    protected handleCreateExpandableProperty(...[{ typeInfo, annotations, rawTitle, isTopLevel, hasFrontMatter, createDescription, createExamples, createDefaultValue, },]: RendererCreateExpandablePropertyArgs): void;
    createFrontMatterDisplayType(...[{ typeInfo }]: RendererCreateFrontMatterDisplayTypeArgs): void;
    createSection(...[cb]: RendererCreateSectionArgs): void;
    createSectionTitle(...[cb]: RendererCreateSectionTitleArgs): void;
    createSectionContent(...[cb, { id }]: RendererCreateSectionContentArgs): void;
    protected createTabbedSection(...[cb]: RendererCreateTabbedSectionArgs): void;
    protected createTabbedSectionTab(...[cb, { id }]: RendererCreateTabbedSectionTabArgs): void;
    createDebugPlaceholder(...[cb]: RendererCreateDebugPlaceholderArgs): void;
}
export {};
//# sourceMappingURL=mdx.d.ts.map