interface UseCodeBlockProps {
    defaultCodeExpanded?: boolean;
    defaultExpanded?: boolean;
    onCodeExpandChange?: (expanded: boolean) => void;
    onExpandChange?: (expanded: boolean) => void;
    scrollToBottom?: (options?: {
        wait?: number;
    }) => void;
}
export declare function useCodeBlock({ defaultExpanded, defaultCodeExpanded, onExpandChange, onCodeExpandChange, scrollToBottom, }: UseCodeBlockProps): {
    isExpanded: boolean;
    codeExpanded: boolean;
    copied: boolean;
    handleExpand: () => void;
    handleCodeExpand: () => void;
    handleCopy: (code: string) => Promise<void>;
};
export {};
