1 | import { InlineSelection, FragmentOrSelection, Typename, Type, Leaf } from "./intermediates";
|
2 | import { Map } from "immutable";
|
3 | export declare type Fragments = {
|
4 | [fragment: string]: InlineSelection;
|
5 | };
|
6 | declare type Curry<T, U, V> = (t: T) => (u: U) => V;
|
7 | export declare type ExtendedFieldType = Type<ExtendedSelection | Leaf | Typename>;
|
8 | export declare type ExtendedField = {
|
9 | type: ExtendedFieldType;
|
10 | optional: boolean;
|
11 | };
|
12 | export declare type __typename = string;
|
13 | export declare type fieldName = string;
|
14 | export declare type ByTypename<T> = Map<__typename, T>;
|
15 | export declare type ExtendedFields = Map<fieldName, ExtendedField>;
|
16 | export declare type ExtendedSelection = {
|
17 | kind: "InlineSelection";
|
18 | fields: ByTypename<ExtendedFields>;
|
19 | };
|
20 | export declare const ExtendedSelection: (inlineSelection: InlineSelection, fragments: Fragments) => ExtendedSelection;
|
21 | export declare const ExtendedFragmentOrSelection: Curry<Fragments, FragmentOrSelection, ExtendedSelection>;
|
22 | export declare const extendedSelectionsAreEqual: (lhs: ExtendedSelection, rhs: ExtendedSelection) => boolean;
|
23 | export {};
|