import { EntityType } from "@trackunit/iris-app-api"; import { CustomFieldDefinitionFragment, CustomFieldOwnerType, SystemOfMeasurement } from "./generated/graphql-api/graphql"; type SupportedEntityTypes = Extract; export type CustomFieldDefinition = CustomFieldDefinitionFragment; interface UseCustomFieldDefinitionsProps { entityType?: SupportedEntityTypes; filterQuery?: string; owners?: Array; systemOfMeasurement: SystemOfMeasurement | null; onlyEditable?: boolean; } interface UseCustomFieldDefinitionsReturnValue { loading: boolean; definitions: Array; appNameFromId: (appId?: string | null) => string | null | undefined; } /** * Custom hook to fetch custom field definitions for a specified entity type. * It only returns the custom field for the current iris app. * * @param {UseCustomFieldDefinitionsProps} props - The properties for the custom fields query. * @param {SupportedEntityTypes} [props.entityType] - The type of the entity (e.g., 'ASSET' or 'SITE'). * @returns {UseCustomFieldDefinitionsReturnValue} An object containing a loading state and an array of custom field definitions. */ export declare const useCustomFieldDefinitions: ({ entityType, filterQuery, owners, systemOfMeasurement, onlyEditable, }: UseCustomFieldDefinitionsProps) => UseCustomFieldDefinitionsReturnValue; export {};