@etsoo/materialui
Version:
TypeScript Material-UI Implementation
69 lines (68 loc) • 1.72 kB
TypeScript
import { DataTypes, IdDefaultType } from "@etsoo/shared";
import React from "react";
import { ResponsiveStyleValue } from "./ResponsiveStyleValue";
import { GridSize } from "@mui/material/Grid";
import { AutocompleteChangeReason } from "@mui/material/Autocomplete";
/**
* Hierarchy tiplist selector props
*/
export type HiSelectorTLProps<T extends object, D extends DataTypes.Keys<T> = IdDefaultType<T>> = {
/**
* Break points
*/
breakPoints?: ResponsiveStyleValue<GridSize>;
/**
* Id field
*/
idField?: D;
/**
* Error
*/
error?: boolean;
/**
* The helper text content.
*/
helperText?: React.ReactNode;
/**
* Name, also hidden input field name
*/
name: string;
/**
* Label
*/
label?: string;
/**
* Labels for each select
*/
labels?: string[];
/**
* Load data callback
*/
loadData: (keyword: string | undefined, id: T[D] | undefined, maxItems: number, parent?: T[D]) => PromiseLike<T[] | null | undefined>;
/**
* On value change event
*/
onChange?: (value: unknown) => void;
/**
* Item change callback
*/
onItemChange?: (event: React.SyntheticEvent, option: T | null, reason: AutocompleteChangeReason) => void;
/**
* Required
*/
required?: boolean;
/**
* Search mode
*/
search?: boolean;
/**
* Values
*/
values?: T[D][];
};
/**
* Hierarchy tiplist selector
* @param props Prop
* @returns Component
*/
export declare function HiSelectorTL<T extends object, D extends DataTypes.Keys<T> = IdDefaultType<T>>(props: HiSelectorTLProps<T, D>): import("react/jsx-runtime").JSX.Element;