import { Contravariant, PhantomData } from "./brand.mjs"; import { Arguments } from "./util.mjs"; import { TopLevelReaderArtifact } from "./reader.mjs"; import { ComponentOrFieldName, TypeName } from "./IsographEnvironment.mjs"; import { FragmentReference, UnknownTReadFromStore } from "./FragmentReference.mjs"; import { NetworkResponseObject } from "./cache.mjs"; //#region src/core/entrypoint.d.ts type ReaderWithRefetchQueries = { readonly kind: 'ReaderWithRefetchQueries'; readonly readerArtifact: TopLevelReaderArtifact; readonly nestedRefetchQueries: RefetchQueryNormalizationArtifactWrapper[]; }; type ReaderWithRefetchQueriesLoader = { readonly kind: 'ReaderWithRefetchQueriesLoader'; readonly fieldName: ComponentOrFieldName; readonly readerArtifactKind: 'EagerReaderArtifact' | 'ComponentReaderArtifact'; readonly loader: () => Promise>; }; type NetworkRequestInfo = { readonly kind: 'NetworkRequestInfo'; readonly operation: IsographOperation | IsographPersistedOperation; readonly normalizationAst: TNormalizationAst; }; type IsographOperation = { readonly kind: 'Operation'; readonly text: string; }; type IsographPersistedOperation = { readonly kind: 'PersistedOperation'; readonly operationId: string; readonly extraInfo: IsographPersistedOperationExtraInfo | null; }; type IsographPersistedOperationExtraInfo = { readonly kind: 'PersistedOperationExtraInfo'; readonly operationName: string | null; readonly operationKind: 'Query' | 'Mutation' | 'Subscription'; }; type IsographEntrypoint = { readonly kind: 'Entrypoint'; readonly networkRequestInfo: NetworkRequestInfo; readonly readerWithRefetchQueries: ReaderWithRefetchQueries | ReaderWithRefetchQueriesLoader; readonly concreteType: TypeName; /** * This field exists solely for typechecking, and will not exist at runtime. */ readonly '~TRawResponseType'?: PhantomData>; }; type FragmentReferenceOfEntrypoint> = FragmentReference, ExtractClientFieldValue>; type IsographEntrypointLoader = { readonly kind: 'EntrypointLoader'; readonly typeAndField: string; readonly readerArtifactKind: 'EagerReaderArtifact' | 'ComponentReaderArtifact'; readonly loader: () => Promise>; }; type NormalizationAstNode = NormalizationScalarField | NormalizationLinkedField | NormalizationInlineFragment; type NormalizationAstNodes = ReadonlyArray; type NormalizationAst = { readonly kind: 'NormalizationAst'; readonly selections: NormalizationAstNodes; }; type NormalizationAstLoader = { readonly kind: 'NormalizationAstLoader'; readonly loader: () => Promise; }; type NormalizationScalarField = { readonly kind: 'Scalar'; readonly fieldName: string; readonly arguments: Arguments | null; }; type NormalizationLinkedField = { readonly kind: 'Linked'; readonly fieldName: string; readonly arguments: Arguments | null; readonly selections: NormalizationAstNodes; readonly concreteType: TypeName | null; }; type NormalizationInlineFragment = { readonly kind: 'InlineFragment'; readonly type: string; readonly selections: NormalizationAstNodes; }; type RefetchQueryNormalizationArtifact = { readonly kind: 'RefetchQuery'; readonly networkRequestInfo: NetworkRequestInfo; readonly concreteType: TypeName; }; type RefetchQueryNormalizationArtifactWrapper = { readonly artifact: RefetchQueryNormalizationArtifact; readonly allowedVariables: string[]; }; declare function assertIsEntrypoint(value: IsographEntrypoint | ((_: any) => any) | any): asserts value is IsographEntrypoint; type ExtractReadFromStore = Type extends IsographEntrypoint ? X : never; type ExtractClientFieldValue = Type extends IsographEntrypoint ? X : never; type ExtractResolverResult = Type extends IsographEntrypoint ? X : never; type ExtractProps = Type extends React.FC ? X : never; //#endregion export { ExtractClientFieldValue, ExtractProps, ExtractReadFromStore, ExtractResolverResult, FragmentReferenceOfEntrypoint, IsographEntrypoint, IsographEntrypointLoader, IsographOperation, IsographPersistedOperation, IsographPersistedOperationExtraInfo, NetworkRequestInfo, NormalizationAst, NormalizationAstLoader, NormalizationAstNode, NormalizationAstNodes, NormalizationInlineFragment, NormalizationLinkedField, NormalizationScalarField, ReaderWithRefetchQueries, RefetchQueryNormalizationArtifact, RefetchQueryNormalizationArtifactWrapper, assertIsEntrypoint }; //# sourceMappingURL=entrypoint.d.mts.map