import { ResultOf, DocumentTypeDecoration, TypedDocumentNode } from '@graphql-typed-document-node/core'; import { Incremental } from './graphql'; export type FragmentType> = TDocumentType extends DocumentTypeDecoration ? [TType] extends [{ ' $fragmentName'?: infer TKey; }] ? TKey extends string ? { ' $fragmentRefs'?: { [key in TKey]: TType; }; } : never : never : never; export declare function useFragment(_documentNode: DocumentTypeDecoration, fragmentType: FragmentType>): TType; export declare function useFragment(_documentNode: DocumentTypeDecoration, fragmentType: FragmentType> | null | undefined): TType | null | undefined; export declare function useFragment(_documentNode: DocumentTypeDecoration, fragmentType: ReadonlyArray>>): ReadonlyArray; export declare function useFragment(_documentNode: DocumentTypeDecoration, fragmentType: ReadonlyArray>> | null | undefined): ReadonlyArray | null | undefined; export declare function makeFragmentData, FT extends ResultOf>(data: FT, _fragment: F): FragmentType; export declare function isFragmentReady(queryNode: DocumentTypeDecoration, fragmentNode: TypedDocumentNode, data: FragmentType, any>> | null | undefined): data is FragmentType;