import {
    type StyleProp,
    type TextStyle,
    type ViewStyle
} from "react-native";
import {
    type NCoreUIKitIcon
} from "../../types";
import {
    type ButtonVariant,
    type ButtonSize,
    type ButtonType
} from "../button/type";

export interface SystemToolbarDynamicStyleType {
    borders: NCoreUIKit.ActivePalette["borders"];
    colors: NCoreUIKit.ActivePalette["colors"];
    spaces: NCoreUIKit.ActivePalette["spaces"];
}

export interface ISystemToolbarAction {
    titleKey?: keyof NCoreUIKit.Translation;
    titleProps?: StyleProp<TextStyle>;
    content?: ISystemToolbarAction[];
    style?: StyleProp<ViewStyle>;
    icon?: NCoreUIKitIcon;
    onPress?: () => void;
}

export interface ISystemToolbarProps {
    titleKey?: keyof NCoreUIKit.Translation;
    actions: ISystemToolbarAction[];
    style?: StyleProp<ViewStyle>;
    variant?: ButtonVariant;
    icon?: NCoreUIKitIcon;
    size?: ButtonSize;
    type?: ButtonType;
    title?: string;
}

export type {
    ISystemToolbarProps as default
};
