import { connection, Synnax, SynnaxProps } from '@synnaxlabs/client';
import { status } from '@synnaxlabs/x';
import { PropsWithChildren, ReactElement } from 'react';
import { synnax } from './aether';
export interface ContextValue extends synnax.ContextValue {
    state: connection.State;
}
export declare const use: () => Synnax | null;
export declare const useConnectionState: () => connection.State;
export interface ProviderProps extends PropsWithChildren {
    connParams?: SynnaxProps;
}
export declare const CONNECTION_STATE_VARIANTS: Record<connection.Status, status.Variant>;
export declare const SERVER_VERSION_MISMATCH = "serverVersionMismatch";
export interface StatusDetails {
    type: string;
    oldServer: boolean;
    nodeVersion?: string;
    clientVersion: string;
}
interface TestProviderProps extends PropsWithChildren {
    client: Synnax | null;
}
export declare const TestProvider: ({ children, client }: TestProviderProps) => ReactElement;
export declare const Provider: ({ children, connParams }: ProviderProps) => ReactElement;
export {};
//# sourceMappingURL=Provider.d.ts.map