export type Platform = "web" | "vk" | "tg";

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

export interface SafeAreaInsets {
    top: number; bottom: number; left: number; right: number;
}

export interface PlatformAPI {
    platform: Platform;
    colorScheme: ColorScheme;
    safeAreaInsets: SafeAreaInsets;

    haptics: {
        impact: (style: "light" | "medium" | "heavy") => void;
        notify: (type: "success" | "warning" | "error") => void;
    };

    navigation: {
        setBackHandler: (cb: (() => void) | null) => void;
    };

    mainButton: {
        show: (text: string, onClick: () => void) => void;
        hide: () => void;
        setLoading: (loading: boolean) => void;
    };
}
