@roochnetwork/rooch-sdk-kit
Version:
Rooch SDK Kit
32 lines (31 loc) • 1.67 kB
TypeScript
import type { ReactNode } from 'react';
import { NetworkConfigs } from './clientProvider.js';
import { Theme } from '../themes/themeContract.js';
import { CreateSessionArgs } from '@roochnetwork/rooch-sdk';
export declare const RoochContext: import("react").Context<(Omit<import("zustand").StoreApi<import("./sessionStore.js").SessionStoreState>, "persist"> & {
persist: {
setOptions: (options: Partial<import("zustand/middleware.js").PersistOptions<import("./sessionStore.js").SessionStoreState, unknown>>) => void;
clearStorage: () => void;
rehydrate: () => Promise<void> | void;
hasHydrated: () => boolean;
onHydrate: (fn: (state: import("./sessionStore.js").SessionStoreState) => void) => () => void;
onFinishHydration: (fn: (state: import("./sessionStore.js").SessionStoreState) => void) => () => void;
getOptions: () => Partial<import("zustand/middleware.js").PersistOptions<import("./sessionStore.js").SessionStoreState, unknown>>;
};
}) | null>;
export type RoochProviderProps<T extends NetworkConfigs> = {
networks?: NetworkConfigs;
sessionConf?: CreateSessionArgs;
onNetworkChange?: (network: keyof T & string) => void;
requestErrorCallback?: (code: number) => void;
/** The theme to use for styling UI components. Defaults to using the light theme. */
theme?: Theme | null;
children: ReactNode;
} & ({
defaultNetwork?: keyof T & string;
network?: never;
} | {
defaultNetwork?: never;
network?: keyof T & string;
});
export declare function RoochProvider<T extends NetworkConfigs>(props: RoochProviderProps<T>): import("react/jsx-runtime.js").JSX.Element;