@@ -48,9 +48,30 @@ describe('infiniteQueryOptions', () => {
4848 expectTypeOf ( data ( ) ) . toEqualTypeOf <
4949 InfiniteData < string , unknown > | undefined
5050 > ( )
51- expectTypeOf ( fetchNextPage ) . parameters . toEqualTypeOf <
52- [ options : { pageParam : number ; cancelRefetch ?: boolean ; throwOnError ?: boolean } ]
53- > ( )
51+ fetchNextPage ( { pageParam : 2 } )
52+
53+ // @ts -expect-error pageParam is required in imperative mode
54+ fetchNextPage ( )
55+ } )
56+
57+ it ( 'should preserve imperative fetch method types' , ( ) => {
58+ const options = infiniteQueryOptions ( {
59+ queryKey : [ 'key' ] ,
60+ queryFn : ( { pageParam } ) => {
61+ expectTypeOf ( pageParam ) . toEqualTypeOf < number > ( )
62+ return pageParam * 5
63+ } ,
64+ initialPageParam : 1 ,
65+ mode : 'imperative' ,
66+ } )
67+
68+ const { fetchNextPage, fetchPreviousPage } = injectInfiniteQuery ( ( ) => options )
69+
70+ fetchNextPage ( { pageParam : 2 } )
71+ fetchPreviousPage ( { pageParam : 0 } )
72+
73+ // @ts -expect-error pageParam is required in imperative mode
74+ fetchNextPage ( )
5475 } )
5576
5677 it ( 'should work when passed to fetchInfiniteQuery' , async ( ) => {
@@ -166,21 +187,21 @@ describe('infiniteQueryOptions', () => {
166187 initialPageParam : 1 ,
167188 } )
168189
190+ // @ts -expect-error getNextPageParam is not allowed in imperative mode
169191 infiniteQueryOptions ( {
170192 queryKey : [ 'key' ] ,
171193 queryFn : ( ) => Promise . resolve ( 'string' ) ,
172194 initialPageParam : 1 ,
173195 mode : 'imperative' ,
174- // @ts -expect-error getNextPageParam is not allowed in imperative mode
175196 getNextPageParam : ( ) => 1 ,
176197 } )
177198
199+ // @ts -expect-error getPreviousPageParam is not allowed in imperative mode
178200 infiniteQueryOptions ( {
179201 queryKey : [ 'key' ] ,
180202 queryFn : ( ) => Promise . resolve ( 'string' ) ,
181203 initialPageParam : 1 ,
182204 mode : 'imperative' ,
183- // @ts -expect-error getPreviousPageParam is not allowed in imperative mode
184205 getPreviousPageParam : ( ) => 0 ,
185206 } )
186207 } )
0 commit comments