import { BaseFilterOptions, BaseSortableFilterOptions, FilterOptions, SortableFilterOptions } from '../cardinal-sdk-ts.mjs'; import { MaintenanceTask } from '../model/MaintenanceTask.mjs'; import { Identifier } from '../model/base/Identifier.mjs'; interface MaintenanceTaskFiltersFactory { /** * * Filter options that match all maintenance tasks with one of the provided ids. * These options are sortable. When sorting using these options the maintenance tasks will have the same order as the input ids. * @param ids a list of unique maintenance task ids. * @throws IllegalArgumentException if the provided [ids] list contains duplicate elements */ byIds(ids: Array): BaseSortableFilterOptions; /** * * Options for maintenance task filtering which match all the maintenance tasks shared directly (i.e. ignoring hierarchies) with a specific data owner that have at least * an identifier that has the same exact [Identifier.system] and [Identifier.value] as one of the provided * [identifiers]. Other properties of the provided identifiers are ignored. * * @param dataOwnerId a data owner id * @param identifiers a list of identifiers * @return options for maintenance task filtering */ byIdentifiersForDataOwner(dataOwnerId: string, identifiers: Array): BaseFilterOptions; /** * * Options for maintenance task filtering which match all the maintenance tasks shared directly (i.e. ignoring hierarchies) with the current data owner that have at least * an identifier that has the same exact [Identifier.system] and [Identifier.value] as one of the provided * [identifiers]. Other properties of the provided identifiers are ignored. * * @param identifiers a list of identifiers * @return options for maintenance task filtering */ byIdentifiersForSelf(identifiers: Array): FilterOptions; /** * * Options for maintenance task filtering which match all the maintenance tasks shared directly (i.e. ignoring hierarchies) with a specific data owner * that have the provided type. * * @param type a maintenance task type * @param dataOwnerId a data owner id */ byTypeForDataOwner(dataOwnerId: string, type: string): BaseFilterOptions; /** * * Options for maintenance task filtering which match all the maintenance tasks shared directly (i.e. ignoring hierarchies) with the current data owner * that have the provided type. * * @param type a maintenance task type */ byTypeForSelf(type: string): FilterOptions; /** * * Options for maintenance task filtering which match all the maintenance tasks shared directly (i.e. ignoring hierarchies) with a specific data owner * that have a [MaintenanceTask.created] after the provided date. * * These options are sortable. When sorting using these options the maintenance tasks will be ordered by their * [MaintenanceTask.created]. * * @param dataOwnerId a data owner id * @param date a unix timestamp */ afterDateForDataOwner(dataOwnerId: string, date: number): BaseSortableFilterOptions; /** * * Options for maintenance task filtering which match all the maintenance tasks shared directly (i.e. ignoring hierarchies) with the current data owner * that have a [MaintenanceTask.created] after the provided date. * * These options are sortable. When sorting using these options the maintenance tasks will be ordered by their * [MaintenanceTask.created]. * * @param date a unix timestamp */ afterDateForSelf(date: number): SortableFilterOptions; } export declare const MaintenanceTaskFilters: MaintenanceTaskFiltersFactory; export {};