burdy
Version:
Open Source Headless Platform
24 lines (23 loc) • 977 B
TypeScript
import React from 'react';
import { UseAsyncReturn } from 'react-async-hook';
import { IGroup } from '@shared/interfaces/model';
import { Selection, SelectionMode } from '@fluentui/react';
import { ItemsOrKeys } from '@admin/helpers/selection';
export interface IGroupsContext {
get: UseAsyncReturn<IGroup, [id: number]>;
list: UseAsyncReturn<IGroup[], []>;
create: UseAsyncReturn<any, [group: Partial<IGroup>]>;
deleteOne: UseAsyncReturn<any, [id: number]>;
deleteMany: UseAsyncReturn<any, [ids: number[]]>;
update: UseAsyncReturn<any, [group: Partial<IGroup>]>;
selection: Selection<IGroup>;
selectedGroups: IGroup[];
groups: IGroup[];
}
export interface IGroupsContextProviderProps {
defaultSelectedGroups?: ItemsOrKeys<IGroup>;
selectionMode?: SelectionMode;
}
declare const GroupsContextProvider: React.FC<IGroupsContextProviderProps>;
declare const useGroups: () => IGroupsContext;
export { GroupsContextProvider, useGroups };