import React from 'react'; declare const SELECTED_ADD = "SELECTED_ADD"; declare const SELECTED_REMOVE = "SELECTED_REMOVE"; declare const SELECTED_REMOVE_ALL = "SELECTED_REMOVE_ALL"; declare const SELECTED_RESET = "SELECTED_RESET"; declare const SELECTED_ADD_MANY = "SELECTED_ADD_MANY"; export interface SelectedAddAction { type: typeof SELECTED_ADD; id: string; } export interface SelectedAddManyAction { type: typeof SELECTED_ADD_MANY; ids: string[]; } export interface SelectedRemoveAction { type: typeof SELECTED_REMOVE; id: string; } export interface SelectedRemoveAllAction { type: typeof SELECTED_REMOVE_ALL; } export interface SelectedResetAction { type: typeof SELECTED_RESET; } export declare type SelectedActions = SelectedAddAction | SelectedAddManyAction | SelectedRemoveAction | SelectedRemoveAllAction | SelectedResetAction; export interface SelectedInterface { [key: string]: boolean; } export interface SelectedDataInterface { id: string; [key: string]: any; } export declare function useSelected(initialState?: SelectedInterface): { state: { [key: string]: any; }; checked: (id: string) => any; add: (id: string) => void; addMany: (ids: string[]) => void; dispatch: React.Dispatch; remove: (id: string) => void; removeAll: () => void; reset: () => void; onCheckAllChange: (data?: SelectedDataInterface[]) => (e: any) => void; onCheckAllClick: (data?: SelectedDataInterface[]) => (e: any) => void; onChecked: (e: any) => void; onClick: (e: any) => (action: SelectedActions) => void; onToggleClick: (e: any) => void; }; export {};