import { UseQueryResult } from '@tanstack/react-query';
import { OnyxProps, ProjectProps } from '../interfaces';
import { DetailResponse, ErrorResponse, GraphConfig, RecordType, ListResponse, ProjectPermissionGroup, Profile, HistoricalEntries, Fields, Choices, Lookup, TypeObject, Count } from '../types';
interface ChoiceProps extends ProjectProps {
    field: string;
}
interface ChoicesProps extends ProjectProps {
    fields: string[];
}
interface IDProps extends ProjectProps {
    searchPath?: string;
    ID: string;
}
interface QueryProps extends ProjectProps {
    searchPath: string;
    searchParameters: string;
}
interface GraphQueryProps extends ProjectProps {
    graphConfig: GraphConfig;
}
/** Fetch types */
export declare const useTypesQuery: (props: OnyxProps) => UseQueryResult<ListResponse<TypeObject> | ErrorResponse, Error>;
/** Fetch lookups */
export declare const useLookupsQuery: (props: OnyxProps) => UseQueryResult<ListResponse<Lookup> | ErrorResponse, Error>;
/** Fetch user profile */
export declare const useProfileQuery: (props: OnyxProps) => UseQueryResult<DetailResponse<Profile> | ErrorResponse, Error>;
/** Fetch user project permissions */
export declare const useProjectPermissionsQuery: (props: OnyxProps) => UseQueryResult<ListResponse<ProjectPermissionGroup> | ErrorResponse, Error>;
/** Fetch project fields */
export declare const useFieldsQuery: (props: ProjectProps) => UseQueryResult<DetailResponse<Fields> | ErrorResponse, Error>;
/** Fetch analysis fields */
export declare const useAnalysisFieldsQuery: (props: ProjectProps) => UseQueryResult<DetailResponse<Fields> | ErrorResponse, Error>;
/** Fetch choices for a field */
export declare const useChoicesQuery: (props: ChoiceProps) => UseQueryResult<DetailResponse<Choices> | ErrorResponse, Error>;
/** Fetch choices for multiple fields */
export declare const useChoicesQueries: (props: ChoicesProps) => UseQueryResult<any, unknown>[];
/** Fetch user activity */
export declare const useActivityQuery: (props: OnyxProps) => UseQueryResult<ListResponse<RecordType> | ErrorResponse, Error>;
/** Fetch site users */
export declare const useSiteUsersQuery: (props: OnyxProps) => UseQueryResult<ListResponse<RecordType> | ErrorResponse, Error>;
/** Fetch history from ID */
export declare const useHistoryQuery: (props: IDProps) => UseQueryResult<DetailResponse<HistoricalEntries> | ErrorResponse, Error>;
/** Fetch record from record ID */
export declare const useRecordQuery: (props: IDProps) => UseQueryResult<DetailResponse<RecordType> | ErrorResponse, Error>;
/** Fetch record analyses from record ID */
export declare const useRecordAnalysesQuery: (props: IDProps) => UseQueryResult<ListResponse<RecordType> | ErrorResponse, Error>;
/** Fetch analysis from analysis ID */
export declare const useAnalysisQuery: (props: IDProps) => UseQueryResult<DetailResponse<RecordType> | ErrorResponse, Error>;
/** Fetch analysis records from analysis ID */
export declare const useAnalysisRecordsQuery: (props: IDProps) => UseQueryResult<ListResponse<RecordType> | ErrorResponse, Error>;
/** Fetch upstream analyses from analysis ID */
export declare const useAnalysisUpstreamQuery: (props: IDProps) => UseQueryResult<ListResponse<RecordType> | ErrorResponse, Error>;
/** Fetch downstream analyses from analysis ID */
export declare const useAnalysisDownstreamQuery: (props: IDProps) => UseQueryResult<ListResponse<RecordType> | ErrorResponse, Error>;
/** Fetch results from path and search parameters */
export declare const useResultsQuery: (props: QueryProps) => UseQueryResult<ListResponse<RecordType> | ErrorResponse, Error>;
/** Fetch count from path and search parameters */
export declare const useCountQuery: (props: QueryProps) => UseQueryResult<DetailResponse<Count> | ErrorResponse, Error>;
/** Fetch summary from project and field */
export declare const useSummaryQuery: (props: GraphQueryProps) => UseQueryResult<any, unknown>;
/** Fetch grouped summary from project, field, and groupBy */
export declare const useGroupedSummaryQuery: (props: GraphQueryProps) => UseQueryResult<any, unknown>;
export {};
