export type ThemesType = {
    initialSelectedGapPropagation?: GapPropagationType;
    initialSelectedActiveSharpness?: SharpnessType;
    initialSelectedPalette?: NCoreUIKit.PaletteKey;
    initialSelectedTheme?: NCoreUIKit.ThemeKey;
    projectThemes?: NCoreUIKit.Palette;
};

export type PaletteType = "nibgat" | "nibgat-community" | "caycore";

export type GapPropagationType = "spacious" | "compact";

export type SharpnessType = "soft" | "sharp" | "rounded";

export type ThemeType = "light" | "dark";

export type ThemeContextStateType = Partial<ThemeContextType>;

export type ThemeContextType = {
    activeGapPropagation: GapPropagationType;
    inlineSpaces: NCoreUIKit.InlineSpaces;
    activePalette: NCoreUIKit.PaletteKey;
    typography: NCoreUIKit.Typography;
    activeTheme: NCoreUIKit.ThemeKey;
    activeSharpness: SharpnessType;
    colors: NCoreUIKit.ThemeTokens;
    radiuses: NCoreUIKit.Radiuses;
    borders: NCoreUIKit.Borders;
    spaces: NCoreUIKit.Spaces;
};
