import { Dispatch, Context } from 'react'; import { GuillotinaClient } from '../lib/client.js'; import { Auth } from '../lib/auth.js'; import { IndexSignature } from '../types/global'; import { GuillotinaGlobalState, GuillotinaReducerActionTypes } from '../reducers/guillotina'; import { GuillotinaCommonObject } from '../types/guillotina.js'; import { IManageRegistry } from '../hooks/useRegistry.js'; export declare const AuthContext: Context<{}>; export declare const ClientContext: Context; interface PropsTraversal { client: GuillotinaClient; auth: Auth; state: GuillotinaGlobalState; dispatch: Dispatch<{ type: GuillotinaReducerActionTypes; payload: IndexSignature; }>; registry: IManageRegistry; flash?: (action: string, result: string) => void; url: string; children?: React.ReactNode; } export declare class Traversal { private dispatch; state: GuillotinaGlobalState; client: GuillotinaClient; registry: IManageRegistry; url: string; auth: Auth; constructor({ flash, ...props }: PropsTraversal); refresh({ transparent }?: { transparent?: boolean | undefined; }): void; get path(): string; get pathPrefix(): string; get context(): GuillotinaCommonObject; get containerPath(): string; apply(data: IndexSignature): void; flash(message: string, type: string): void; clearFlash(): void; doAction(action: string, params?: {}): void; cancelAction(): void; hasPerm(permission: string): boolean; filterTabs(tabs: IndexSignature, tabsPermissions: IndexSignature): IndexSignature; } export declare const TraversalContext: Context; export declare function TraversalProvider({ children, ...props }: PropsTraversal & { children: React.ReactNode; }): import("react/jsx-runtime").JSX.Element; export declare function useTraversal(): Traversal; interface PropsClient { children: React.ReactNode; client: GuillotinaClient; } export declare function ClientProvider({ children, client }: PropsClient): import("react/jsx-runtime").JSX.Element; export declare function useGuillotinaClient(): GuillotinaClient; export {};