Files
homarr/src/modules/ModuleTypes.d.ts
2022-08-25 11:07:25 +02:00

25 lines
587 B
TypeScript

// This interface is to be used in all the modules of the project
// Each module should have its own interface and call the following function:
// TODO: Add a function to register a module
import { TablerIcon } from '@tabler/icons';
// Note: Maybe use context to keep track of the modules
export interface IModule {
id: string;
title: string;
icon: TablerIcon;
component: React.ComponentType;
options?: Option;
}
interface Option {
[x: string]: OptionValues;
}
export interface OptionValues {
name: string;
value: boolean | string | string[];
options?: string[];
}