UNPKG

@craftercms/studio-ui

Version:

Services, components, models & utils to build CrafterCMS authoring extensions.

48 lines (46 loc) 1.71 kB
/* * Copyright (C) 2007-2022 Crafter Software Corporation. All Rights Reserved. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License version 3 as published by * the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ import Person from '../../models/Person'; import { Dispatch, SetStateAction } from 'react'; export interface CommonDashletProps { contentHeight?: number | string; borderLeftColor?: string; } export declare function parseDashletContentHeight(contentHeight: string | number): number; export declare function getPersonFullName(person: Person): string; export interface WithSelectedStateItem { id: string | number; } export interface WithSelectedState< ItemType extends WithSelectedStateItem = { id: string | number; } > { items: ItemType[]; isAllSelected: boolean; hasSelected: boolean; selected: Record<string | number, boolean>; selectedCount: number; } export declare function useSpreadStateWithSelected<S extends WithSelectedState>( initialState: Omit<S, keyof WithSelectedState> & Partial<WithSelectedState> ): [ S, Dispatch<SetStateAction<Partial<S>>>, (e: any, item: WithSelectedStateItem) => void, (e: any) => void, <T extends WithSelectedStateItem>(item: T) => boolean ];