Repository URL to install this package:
Version:
0.2.0-dev.38 ▾
|
/// <reference types="react" />
import type { DescriptionPanelItemProps } from '../../components2/DescriptionPanel/DescriptionPanel.types';
import type { Falsy } from '../../utils/typing';
import type { ModelFieldDefinition } from '../useModel/useModel.types';
export declare type TimeStampedModelTypeOptions = {
createdField?: ModelFieldDefinition;
modifiedField?: ModelFieldDefinition;
parseFunc?: (str: string) => Date;
formatFunc?: (date: Date) => string;
};
export declare type TimeStampedModelOptions = TimeStampedModelTypeOptions & {
adminModuleFields?: Record<string, boolean>;
};
export declare function useTimeStampedModelType(typeOptions?: TimeStampedModelTypeOptions): {
fields: {
[x: string]: ModelFieldDefinition;
};
metaFields: {
created: ModelFieldDefinition;
modified: ModelFieldDefinition;
};
renderCreated: (obj: Record<string, any>) => JSX.Element;
renderModified: (obj: Record<string, any>) => JSX.Element;
};
export declare function useTimeStampedModel(obj: Record<string, any>, modelOptions?: TimeStampedModelOptions): {
adminModuleItems: (Falsy | DescriptionPanelItemProps)[];
renderCreated: () => JSX.Element;
renderModified: () => JSX.Element;
fields: {
[x: string]: ModelFieldDefinition;
};
metaFields: {
created: ModelFieldDefinition;
modified: ModelFieldDefinition;
};
};
export default useTimeStampedModel;