import type { NormalisedGetRedirectionURLContext, UserContext } from "../../types"; export declare type RecipePreAPIHookContext = { requestInit: RequestInit; url: string; action: Action; userContext: UserContext; }; export declare type RecipePostAPIHookContext = { action: Action; requestInit: RequestInit; url: string; fetchResponse: Response; userContext: UserContext; }; export declare type RecipePreAPIHookFunction = (context: RecipePreAPIHookContext) => Promise<{ url: string; requestInit: RequestInit; }>; export declare type RecipePostAPIHookFunction = (context: RecipePostAPIHookContext) => Promise; export declare type RecipeOnHandleEventFunction = (context: EventType) => void; export declare type UserInput = { getRedirectionURL?: ( context: NormalisedGetRedirectionURLContext, userContext: UserContext ) => Promise; preAPIHook?: RecipePreAPIHookFunction; postAPIHook?: RecipePostAPIHookFunction; onHandleEvent?: RecipeOnHandleEventFunction; style?: string; }; export declare type Config = UserInput< GetRedirectionURLContextType, Action, OnHandleEventContextType >; export declare type NormalisedConfig = { getRedirectionURL: ( context: NormalisedGetRedirectionURLContext, userContext: UserContext ) => Promise; onHandleEvent: RecipeOnHandleEventFunction; recipeRootStyle: string; preAPIHook: (context: RecipePreAPIHookContext) => Promise<{ url: string; requestInit: RequestInit; }>; postAPIHook: (context: RecipePostAPIHookContext) => Promise; };