import React from 'react'; import type { JSX } from 'react'; import type { FileTabs } from '../../components/CodeBlock/CodeBlock'; export type CodeBlockControlsProps = { children?: React.ReactNode; className?: string; title?: React.ReactNode | string; controls?: ControlItems | false; tabs?: FileTabs; }; type ControlItems = { copy?: CopyControlProps; expand?: ControlProps; collapse?: ControlProps; report?: ControlProps; select?: ControlProps; deselect?: ControlProps; }; type ControlProps = { hidden?: boolean; label?: string; tooltipText?: string; onClick?: () => void; props?: Record; }; type CopyControlProps = ControlProps & { data?: string; dataSource?: string; dataHash?: string; toasterPlacement?: 'left' | 'right' | 'top' | 'bottom'; toasterText?: string; toasterDuration?: number; handleOutside?: boolean; }; export type ControlItemType = 'text' | 'icon'; export declare function CodeBlockControls({ children, className, title, controls, tabs, }: CodeBlockControlsProps): JSX.Element | null; export {};