@flanksource/clicky-ui
Version:
Flanksource Clicky UI — React component library built on shadcn/ui with light/dark and density theming.
27 lines • 1.76 kB
TypeScript
import { Dispatch, SetStateAction } from 'react';
import { FilterBarFilter, FilterBarMultiFilterMode, FilterBarRangeProps } from '../components/FilterBar';
import { OpenAPIParameter, OperationLookupResponse } from './types';
export type ParameterValues = Record<string, string>;
export type ParameterValuesSetter = Dispatch<SetStateAction<ParameterValues>>;
export type ParameterFormConfig = {
filters: FilterBarFilter[];
timeRange?: FilterBarRangeProps;
};
export type ParameterFormOptions = {
includeLocations?: OpenAPIParameter["in"][];
lookup?: OperationLookupResponse | undefined;
lockedValues?: ParameterValues | undefined;
hideLocked?: boolean;
};
export declare function titleCase(value: string): string;
export declare function defaultValueForParameter(param: OpenAPIParameter, method: string): string;
export declare function buildInitialParameterValues(parameters: OpenAPIParameter[], method: string, lockedValues?: ParameterValues, initialValues?: ParameterValues): ParameterValues;
export declare function pruneParameterValues(values: ParameterValues): {
[k: string]: string;
};
export declare function packParameterValues(values: ParameterValues, parameters: OpenAPIParameter[]): ParameterValues;
export declare function parametersToFormConfig(parameters: OpenAPIParameter[], values: ParameterValues, setValues: ParameterValuesSetter, options?: ParameterFormOptions): ParameterFormConfig;
export declare function useDebouncedRecord<T>(value: T, delayMs: number): T;
export declare function parseMultiFilterValue(value: string): Record<string, FilterBarMultiFilterMode>;
export declare function serializeMultiFilterValue(value: Record<string, FilterBarMultiFilterMode>): string;
//# sourceMappingURL=formMetadata.d.ts.map