@gpa-gemstone/common-pages
Version:
Common UI pages for GPA products
37 lines (36 loc) • 1.66 kB
TypeScript
import * as React from 'react';
import { GenericSlice, Search } from '@gpa-gemstone/react-interactive';
import { OpenXDA, SystemCenter, Application } from '@gpa-gemstone/application-typings';
interface U {
ID: number | string;
}
interface IProps<T extends U> {
/** A Generic Slyce for the Search */
Slice: GenericSlice<T>;
/** Functions that gets available values for any ENUM Types */
GetEnum: (setOptions: (options: IOptions[]) => void, field: Search.IField<T>) => () => void;
/** Function that Grabs any additional Filters that shoudl be available (such as Addl Fields) */
GetAddlFields: (setAddlFields: (cols: Search.IField<T>[]) => void) => () => void;
AddlFilters?: Search.IFilter<T>[];
StorageID?: string;
}
interface IOptions {
Value: string;
Label: string;
}
/** This Implements a few standardized SearchBars */
export declare namespace DefaultSearch {
/** This Implements a standard Meter Search */
const Meter: React.FC<IProps<SystemCenter.Types.DetailedMeter>>;
/** This Implements a standard Substation Search */
const Location: React.FC<IProps<SystemCenter.Types.DetailedLocation>>;
/** This Implements a standard Transmission Asset Search */
const Asset: React.FC<IProps<SystemCenter.Types.DetailedAsset>>;
/** This Implements a standard AssetGroup Search */
const AssetGroup: React.FC<IProps<OpenXDA.Types.AssetGroup>>;
/** This Implements a standard User Search */
const User: React.FC<IProps<Application.Types.iUserAccount>>;
/** This Implements a standard Customer Search */
const Customer: React.FC<IProps<OpenXDA.Types.Customer>>;
}
export {};