import { ArchbaseRemoteApiService, Page } from '../service'; import { ArchbaseRemoteFilterDataSource, RemoteFilter } from '../datasource'; import { ArchbaseStateValues } from '../types'; import { IDataSourceValidator } from '../datasource/ArchbaseDataSource'; export type UseArchbaseRemoteFilterDataSourceProps = { name: string; service: ArchbaseRemoteApiService; store?: ArchbaseStateValues; filter?: string; sort?: string[]; loadOnStart?: boolean; initialDataSource?: ArchbaseRemoteFilterDataSource | undefined; pageSize?: number; currentPage?: number; transformData?: (data: any) => Page; onLoadComplete?: (dataSource: ArchbaseRemoteFilterDataSource) => void; onError?: (error: any, originError: any) => void; onDestroy?: (dataSource: ArchbaseRemoteFilterDataSource) => void; filterData?: (data: any) => Page; findAll?(page: number, size: number): Promise>; findAllWithSort?(page: number, size: number, sort: string[]): Promise>; findAllWithFilter?(filter: string, page: number, size: number): Promise>; findAllWithFilterAndSort?(filter: string, page: number, size: number, sort: string[]): Promise>; findOne?(id: ID): Promise>; validator?: IDataSourceValidator; }; export type UseArchbaseRemoteFilterDataSourceReturnType = { dataSource: ArchbaseRemoteFilterDataSource; isLoading: boolean; isError: boolean; error: any; clearError: () => void; }; export declare function useArchbaseRemoteFilterDataSource(props: UseArchbaseRemoteFilterDataSourceProps): UseArchbaseRemoteFilterDataSourceReturnType;