import type { FieldOptions , DirectiveArgs } from 'graphql-ts-client-api' ; import { ConnectionFetcher , EdgeFetcher , ObjectFetcher , createFetcher , createFetchableType } from 'graphql-ts-client-api' ; import type { WithTypeName , ImplementationType } from '../CommonTypes' ; export interface EmployeeConnectionFetcher < T extends object , TVariables extends object > extends ConnectionFetcher < 'EmployeeConnection' , T , TVariables > { on < XName extends ImplementationType < 'EmployeeConnection' > , X extends object , XVariables extends object > ( child , fragmentName ? ) : EmployeeConnectionFetcher < XName extends 'EmployeeConnection' ? T & X : WithTypeName < T , ImplementationType < 'EmployeeConnection' > > & ( WithTypeName < X , ImplementationType < XName > > | { __typename : Exclude < ImplementationType < 'EmployeeConnection' > , ImplementationType < XName > > ; } ) , TVariables & XVariables > ; directive ( name , args ? ) : EmployeeConnectionFetcher < T , TVariables > ; readonly __typename : EmployeeConnectionFetcher < T & { __typename : ImplementationType < 'EmployeeConnection' > ; } , TVariables > ; readonly totalCount : EmployeeConnectionFetcher < T & { readonly "totalCount" : number ; } , TVariables > ; "totalCount+" < XAlias extends string = "totalCount" , XDirectives extends { readonly [ key ] : DirectiveArgs ; } = { } , XDirectiveVariables extends object = { } > ( optionsConfigurer ) : EmployeeConnectionFetcher < T & ( XDirectives extends { readonly include : any ; } | { readonly skip : any ; } ? { readonly [ key in XAlias ] ? : number ; } : { readonly [ key in XAlias ] : number ; } ) , TVariables & XDirectiveVariables > ; readonly "~totalCount" : EmployeeConnectionFetcher < Omit < T , 'totalCount' > , TVariables > ; edges < X extends object , XVariables extends object > ( child ) : EmployeeConnectionFetcher < T & { readonly "edges" : readonly X [ ] ; } , TVariables & XVariables > ; edges < X extends object , XVariables extends object , XAlias extends string = "edges" , XDirectives extends { readonly [ key ] : DirectiveArgs ; } = { } , XDirectiveVariables extends object = { } > ( child , optionsConfigurer ) : EmployeeConnectionFetcher < T & ( XDirectives extends { readonly include : any ; } | { readonly skip : any ; } ? { readonly [ key in XAlias ] ? : readonly X [ ] ; } : { readonly [ key in XAlias ] : readonly X [ ] ; } ) , TVariables & XVariables & XDirectiveVariables > ; pageInfo < X extends object , XVariables extends object > ( child ) : EmployeeConnectionFetcher < T & { readonly "pageInfo" : X ; } , TVariables & XVariables > ; pageInfo < X extends object , XVariables extends object , XAlias extends string = "pageInfo" , XDirectives extends { readonly [ key ] : DirectiveArgs ; } = { } , XDirectiveVariables extends object = { } > ( child , optionsConfigurer ) : EmployeeConnectionFetcher < T & ( XDirectives extends { readonly include : any ; } | { readonly skip : any ; } ? { readonly [ key in XAlias ] ? : X ; } : { readonly [ key in XAlias ] : X ; } ) , TVariables & XVariables & XDirectiveVariables > ; } export const employeeConnection$ = createFetcher ( createFetchableType ( "EmployeeConnection" , "CONNECTION" , [ ] , [ "totalCount" , { category : "LIST" , name : "edges" , targetTypeName : "EmployeeEdge" } , { category : "SCALAR" , name : "pageInfo" , targetTypeName : "PageInfo" } ] ) , undefined ) ; export const employeeConnection$$ = employeeConnection$ . totalCount ;