import { PropertyMeta } from "../../core/property-meta";
import { ResourceMeta } from "../../core/resource-meta";
import { UiPropertyMeta } from "../../core/ui-property-meta";
import { WithId } from "../../../../fd-toolbox-core/types/resource-with-id";
import { WithIndexer } from "../../../../fd-toolbox-core/types/with-indexer";
import { SetStateFunc } from "../../../../fd-toolbox/functions/internal-getter-setter-functions";
import { UseFormReturn } from "react-hook-form";
import { EditResourceConfig } from "../config/edit-resource-config";
import { EditResourceCustomFieldConfig } from "../config/edit-resource-config-custom-field";
export declare function updateExcludeResourceIds(value: WithIndexer<string>, resourceMeta: ResourceMeta, excludeResourceIds: Map<string, string[]>): Map<string, string[]>;
export declare function shouldBeVisible(uiPropertyMeta: UiPropertyMeta, config: EditResourceConfig, showHiddenProperties?: boolean): boolean;
export declare function getPropertyCssClass(uiPropertyMeta: UiPropertyMeta, config: EditResourceConfig, showHiddenProperties?: boolean): string;
/** @internal */
export declare function getUiPropertyMetas(uiPropertyMetas: WithIndexer<UiPropertyMeta>): UiPropertyMeta[];
export declare function getPropertyMetas(propertyMetas: WithIndexer<PropertyMeta>): PropertyMeta[];
export declare function onPropsChange(form: UseFormReturn, setExcludeResourceIds: SetStateFunc<Map<string, string[]>>, values: WithIndexer<string>, instanceNumber: {
    value: number;
}, resourceMeta?: ResourceMeta): () => void;
export declare function getSortedUiPropertyMetasAndCustomActionFields(sortedUiPropertyMetas: UiPropertyMeta[], customActionFields?: EditResourceCustomFieldConfig[], resourceMeta?: ResourceMeta): {
    uiPriority?: number;
    customField?: EditResourceCustomFieldConfig;
    uiPropertyMeta?: UiPropertyMeta;
}[];
/** @internal */
export declare function getUiPropertyMetaToUiPriorities(propertyMetas: UiPropertyMeta[], resourceMeta: ResourceMeta): {
    uiPriority: number;
    uiPropertyMeta: UiPropertyMeta;
}[];
export declare function getSortedUiPropertyMetas(uiPropertyMetas: WithIndexer<UiPropertyMeta>): UiPropertyMeta[];
export declare function onItemClick(propertyMeta: PropertyMeta, resourceMeta: ResourceMeta, resource: WithId): void;
