import type { ReactNode } from "react";
import { type VariantProps } from "tailwind-variants";
import type { Accent } from "../../core/AlouetteConfig";
declare const blockquoteQuote: import("tailwind-variants").TVReturnType<{
    size: {
        sm: string;
        md: string;
    };
}, undefined, "text-sharp", {
    size: {
        sm: string;
        md: string;
    };
}, undefined, import("tailwind-variants").TVReturnType<{
    size: {
        sm: string;
        md: string;
    };
}, undefined, "text-sharp", unknown, unknown, undefined>>;
export interface BlockquoteFrameProps {
    /**
     * The quoted block content, rendered as is: paragraphs, a list, a
     * `CodeBlock`. A quote that is only text is a `Blockquote`.
     */
    children?: ReactNode;
    /** Attribution rendered under the quote — usually a `<Citation>`. */
    citation?: ReactNode;
    accent?: Accent;
    className?: string;
}
/**
 * The frame of a `Blockquote` around block content, laid out by the caller.
 *
 * `role="blockquote"` renders a `<blockquote>` element on web; native keeps a
 * plain View.
 */
export declare function BlockquoteFrame({ children, citation, accent, className, }: BlockquoteFrameProps): ReactNode;
type BlockquoteVariantProps = VariantProps<typeof blockquoteQuote>;
export interface BlockquoteProps extends Omit<BlockquoteFrameProps, "children">, BlockquoteVariantProps {
    /** The quoted text: inline content only, it renders a `<p>` on web. */
    children?: ReactNode;
}
/**
 * A quoted excerpt, set off by an accent rule on its leading edge. Its text
 * goes in a `Paragraph`; block content goes in a `BlockquoteFrame` instead.
 */
export declare function Blockquote({ children, size, ...frameProps }: BlockquoteProps): ReactNode;
export {};
//# sourceMappingURL=Blockquote.d.ts.map