import { ComputedRef } from 'vue'; import { ThemeBorderRadius, ThemePadding } from './useCanvasTheme'; import { BackgroundAttachment, BackgroundPositionX, BackgroundPositionY, BackgroundRepeat, BackgroundSize } from '../../../types/background'; import { CanvasTheme, ComponentNode } from '../types/canvas'; export interface ComponentStyle { backgroundColor?: string; backgroundAttachment?: BackgroundAttachment; backgroundImage?: string | null; backgroundPositionX?: BackgroundPositionX; backgroundPositionY?: BackgroundPositionY; backgroundRepeat?: BackgroundRepeat; backgroundSize?: BackgroundSize; borderRadius?: string; height?: string; marginBottom?: string; padding?: string; width?: string; } type DataTableThemeMetaOverride = { headerBackgroundColor?: string; groupHeaderBackgroundColor?: string; }; type ThemeMetaOverride = DataTableThemeMetaOverride & Record; export declare function useComponentStyle(componentNode?: ComputedRef): { borderRadiusThemeValues: ComputedRef; componentSpacingThemeValues: ComputedRef; paddingThemeValues: ComputedRef; createStyleUpdate: (updates?: Partial<{ backgroundColor?: string; backgroundAttachment?: BackgroundAttachment; backgroundImage?: string | null; backgroundPositionX?: BackgroundPositionX; backgroundPositionY?: BackgroundPositionY; backgroundRepeat?: BackgroundRepeat; backgroundSize?: BackgroundSize; borderRadius?: ThemeBorderRadius; height?: string | null; left?: string; marginBottom?: string | null; padding?: ThemePadding; position?: "absolute" | "relative" | "static" | "fixed"; top?: string; width?: string; }>) => Record; getComponentSpecificThemeMetaOverrides: (componentType: ComponentNode["type"], meta: ComponentNode["theme_meta"]) => ThemeMetaOverride; getCssThemeMetaStyleOverrides: (componentType: ComponentNode["type"], meta: ComponentNode["theme_meta"], sectionTheme?: CanvasTheme) => Record; getDerivedStyleFromFeatureFlags: (style: Record | undefined) => Record | undefined; }; export {};