import { type Entity } from '@graphprotocol/hypergraph';
import type { Mapping, MappingEntry } from '@graphprotocol/typesync/Mapping';
import type { QueryPublicParams } from './types.js';
type EntityQueryResult = {
    entities: {
        id: string;
        name: string;
        valuesList: {
            propertyId: string;
            value: string;
        }[];
        relationsList: {
            toEntity: {
                id: string;
                name: string;
                valuesList: {
                    propertyId: string;
                    value: string;
                }[];
                relationsList: {
                    toEntity: {
                        id: string;
                        name: string;
                        valuesList: {
                            propertyId: string;
                            value: string;
                        }[];
                    };
                    typeId: string;
                }[];
            };
            typeId: string;
        }[];
    }[];
};
export declare const parseResult: <S extends Entity.AnyNoContext>(queryData: EntityQueryResult, type: S, mappingEntry: MappingEntry, mapping: Mapping) => {
    data: Entity.Entity<S>[];
    invalidEntities: Record<string, unknown>[];
};
export declare const useQueryPublic: <S extends Entity.AnyNoContext>(type: S, params?: QueryPublicParams<S>) => {
    data: Entity.Entity<S>[];
    invalidEntities: Record<string, unknown>[];
    error: Error;
    isError: true;
    isPending: false;
    isLoading: false;
    isLoadingError: false;
    isRefetchError: true;
    isSuccess: false;
    isPlaceholderData: false;
    status: "error";
    dataUpdatedAt: number;
    errorUpdatedAt: number;
    failureCount: number;
    failureReason: Error | null;
    errorUpdateCount: number;
    isFetched: boolean;
    isFetchedAfterMount: boolean;
    isFetching: boolean;
    isInitialLoading: boolean;
    isPaused: boolean;
    isRefetching: boolean;
    isStale: boolean;
    refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<EntityQueryResult, Error>>;
    fetchStatus: import("@tanstack/react-query").FetchStatus;
    promise: Promise<EntityQueryResult>;
} | {
    data: Entity.Entity<S>[];
    invalidEntities: Record<string, unknown>[];
    error: null;
    isError: false;
    isPending: false;
    isLoading: false;
    isLoadingError: false;
    isRefetchError: false;
    isSuccess: true;
    isPlaceholderData: false;
    status: "success";
    dataUpdatedAt: number;
    errorUpdatedAt: number;
    failureCount: number;
    failureReason: Error | null;
    errorUpdateCount: number;
    isFetched: boolean;
    isFetchedAfterMount: boolean;
    isFetching: boolean;
    isInitialLoading: boolean;
    isPaused: boolean;
    isRefetching: boolean;
    isStale: boolean;
    refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<EntityQueryResult, Error>>;
    fetchStatus: import("@tanstack/react-query").FetchStatus;
    promise: Promise<EntityQueryResult>;
} | {
    data: Entity.Entity<S>[];
    invalidEntities: Record<string, unknown>[];
    error: Error;
    isError: true;
    isPending: false;
    isLoading: false;
    isLoadingError: true;
    isRefetchError: false;
    isSuccess: false;
    isPlaceholderData: false;
    status: "error";
    dataUpdatedAt: number;
    errorUpdatedAt: number;
    failureCount: number;
    failureReason: Error | null;
    errorUpdateCount: number;
    isFetched: boolean;
    isFetchedAfterMount: boolean;
    isFetching: boolean;
    isInitialLoading: boolean;
    isPaused: boolean;
    isRefetching: boolean;
    isStale: boolean;
    refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<EntityQueryResult, Error>>;
    fetchStatus: import("@tanstack/react-query").FetchStatus;
    promise: Promise<EntityQueryResult>;
} | {
    data: Entity.Entity<S>[];
    invalidEntities: Record<string, unknown>[];
    error: null;
    isError: false;
    isPending: true;
    isLoading: true;
    isLoadingError: false;
    isRefetchError: false;
    isSuccess: false;
    isPlaceholderData: false;
    status: "pending";
    dataUpdatedAt: number;
    errorUpdatedAt: number;
    failureCount: number;
    failureReason: Error | null;
    errorUpdateCount: number;
    isFetched: boolean;
    isFetchedAfterMount: boolean;
    isFetching: boolean;
    isInitialLoading: boolean;
    isPaused: boolean;
    isRefetching: boolean;
    isStale: boolean;
    refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<EntityQueryResult, Error>>;
    fetchStatus: import("@tanstack/react-query").FetchStatus;
    promise: Promise<EntityQueryResult>;
} | {
    data: Entity.Entity<S>[];
    invalidEntities: Record<string, unknown>[];
    error: null;
    isError: false;
    isPending: true;
    isLoadingError: false;
    isRefetchError: false;
    isSuccess: false;
    isPlaceholderData: false;
    status: "pending";
    dataUpdatedAt: number;
    errorUpdatedAt: number;
    failureCount: number;
    failureReason: Error | null;
    errorUpdateCount: number;
    isFetched: boolean;
    isFetchedAfterMount: boolean;
    isFetching: boolean;
    isLoading: boolean;
    isInitialLoading: boolean;
    isPaused: boolean;
    isRefetching: boolean;
    isStale: boolean;
    refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<EntityQueryResult, Error>>;
    fetchStatus: import("@tanstack/react-query").FetchStatus;
    promise: Promise<EntityQueryResult>;
} | {
    data: Entity.Entity<S>[];
    invalidEntities: Record<string, unknown>[];
    isError: false;
    error: null;
    isPending: false;
    isLoading: false;
    isLoadingError: false;
    isRefetchError: false;
    isSuccess: true;
    isPlaceholderData: true;
    status: "success";
    dataUpdatedAt: number;
    errorUpdatedAt: number;
    failureCount: number;
    failureReason: Error | null;
    errorUpdateCount: number;
    isFetched: boolean;
    isFetchedAfterMount: boolean;
    isFetching: boolean;
    isInitialLoading: boolean;
    isPaused: boolean;
    isRefetching: boolean;
    isStale: boolean;
    refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<EntityQueryResult, Error>>;
    fetchStatus: import("@tanstack/react-query").FetchStatus;
    promise: Promise<EntityQueryResult>;
};
export {};
//# sourceMappingURL=use-query-public.d.ts.map