import { FilterBarValues } from "@trackunit/iris-app-runtime-core-api"; import { AssetFiltersInput, AssetSortInput, SystemOfMeasurement } from "./generated/graphql-api/graphql"; export interface AssetQueryInputVariables { filters: AssetFiltersInput; sort: AssetSortInput; before: string | null | undefined; after: string | null | undefined; first: number | null | undefined; last: number | null | undefined; systemOfMeasurement: SystemOfMeasurement; definitionIds: Array | null; } export interface AssetQueryFilters { assetQueryVariables: AssetQueryInputVariables; } export interface UseAssetQueryFiltersProps { filters: FilterBarValues; /** * Will default to 50 */ first?: number; } /** * A hook used to handle asset query filters. * It resets the pagination when filters change. * The assetQueryVariables can be passed directly to any asset query. * The filters are converted to the GraphQL API format. * * @example const { assetQueryVariables } = useAssetQueryFilters({ filters: filterBar.filterBarConfig.values }); * const { data: assets } = useMyAssetsQuery({ * variables: assetQueryVariables, * }); * @returns {AssetQueryFilters} - assetQueryVariables */ export declare const useAssetQueryFilters: (props: UseAssetQueryFiltersProps) => AssetQueryFilters;