UNPKG

@danilandreev/material-docs

Version:

material-docs - react framework for easy creating documentation site in material design style.

67 lines (60 loc) 1.54 kB
/* * Author: Andrieiev Danil | danssg08@gmail.com | https://github.com/DanilAndreev * Copyright (C) 2020. */ /// <reference types="react" /> import PageData from "../../interfaces/PageData"; import PagesGroupData from "../../interfaces/PagesGroupData"; export interface GroupsContext { /** * pages - array of nested pages. * @type PageData[] */ pages: PageData[], /** * groups - array of nested groups. * @type PagesGroupData[] */ groups: PagesGroupData[], /** * name - name of the group. * @type string */ name: string, /** * path - array of parent group names, placed in order which conforms to hierarchical structure. * @type string[] */ path: string[], /** * deletePage - add page to group. * @function * @param {object} page */ addPage(page: PageData): void, /** * deletePage - delete page from group. * @function * @param {string | object} page */ deletePage(page: PageData | string): void, /** * addGroup - add nested group. * @function * @param {object} group */ addGroup(group: PagesGroupData): void, /** * addGroup - delete nested group. * @function * @param {string | object} group */ deleteGroup(group: PagesGroupData | string): void, } /** * useGroup - react hook, used to provide grouping mechanism. * @function * @return GroupsContext */ declare const useGroup: () => GroupsContext; export default useGroup;