import { CSSProperties, MaybeRef } from 'vue'; import { default as VCodeBlock } from '../VCodeBlock.vue'; export * from '../index'; export type UseTheme = MaybeRef; export type CopyStatus = MaybeRef<'copy' | 'success' | 'failed'>; export interface Props { browserWindow?: boolean; cssPath?: string | undefined; code?: object | [] | string | number; codeBlockRadius?: string; copyButton?: boolean; copyIcons?: boolean; copyTab?: boolean; copyFailedText?: string; copyText?: string; copySuccessText?: string; floatingTabs?: boolean; globalOptions?: boolean; height?: string | number; highlightjs?: boolean; indent?: number; label?: string; lang?: string; languages?: string[]; maxHeight?: string | number; persistentCopyButton?: boolean; prismjs?: boolean; prismPlugin?: boolean; runTab?: boolean; runText?: string; tabGap?: string | number; tabs?: boolean; theme?: string | boolean; } export interface UseConvertToUnit { (options: { str: string | number | undefined | null; unit?: string; }): string | void; } export interface UseCodeBlockClasses { (options: { isMobile: MaybeRef; isPrism: MaybeRef; }): object; } export interface UseCopyButtonClasses { (options: { copyStatus: CopyStatus; isMobile: MaybeRef; persistentCopyButton: MaybeRef; }): object; } export interface UseIconClasses { (options: { copyStatus: CopyStatus; highlightjs: MaybeRef; useTheme: UseTheme; }): object; } export interface UseLabelClasses { (options: { isMobile: MaybeRef; }): object; } export interface UseTabClasses { (options: { highlightjs: MaybeRef; useTheme: UseTheme; }): object; } export interface UseCodeTagStyles { (options: { isLoading: MaybeRef; useTheme: UseTheme; }): CSSProperties; } export interface UseHeaderStyles { (options: { floatingTabs: MaybeRef; tabGap: MaybeRef; }): CSSProperties; } export interface UsePreTagStyles { (options: { copyTab: MaybeRef; height: MaybeRef; maxHeight: MaybeRef; radius: MaybeRef; runTab: MaybeRef; tabs: MaybeRef; useTheme: UseTheme; }): CSSProperties; } export interface UseTabGroupStyles { (options: { tabGap: MaybeRef; }): CSSProperties; } declare module "vue" { interface ComponentCustomProperties { } interface GlobalComponents { VCodeBlock: typeof VCodeBlock; } }