synapse-react-client
Version:
[](https://badge.fury.io/js/synapse-react-client) [](https://github.com/prettier/prettie
96 lines • 3.53 kB
TypeScript
import { DataGridWebSocket } from '@/components/DataGrid/DataGridWebSocket';
import { UseMutationOptions } from '@tanstack/react-query';
import { GridModel } from '@/components/DataGrid/DataGridTypes';
interface EstablishWebsocketParams {
replicaId: number;
sessionId: string;
websocketOptions?: {
onGridReady?: () => void;
onStatusChange?: (open: boolean) => void;
onModelCreate?: (model: GridModel) => void;
model?: GridModel | null;
};
}
/**
* Hook to establish a DataGrid WebSocket using a presigned URL.
* Assumes the WebSocket will connect successfully once a presigned URL is retrieved.
*/
export declare function useEstablishWebsocketConnection(options?: Partial<UseMutationOptions<DataGridWebSocket, unknown, EstablishWebsocketParams>>): {
presignedUrl: string | null;
clearPresignedUrl: () => void;
data: undefined;
variables: undefined;
error: null;
isError: false;
isIdle: true;
isPending: false;
isSuccess: false;
status: "idle";
mutate: import("@tanstack/react-query").UseMutateFunction<DataGridWebSocket, unknown, EstablishWebsocketParams, unknown>;
reset: () => void;
context: unknown;
failureCount: number;
failureReason: unknown;
isPaused: boolean;
submittedAt: number;
mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<DataGridWebSocket, unknown, EstablishWebsocketParams, unknown>;
} | {
presignedUrl: string | null;
clearPresignedUrl: () => void;
data: undefined;
variables: EstablishWebsocketParams;
error: null;
isError: false;
isIdle: false;
isPending: true;
isSuccess: false;
status: "pending";
mutate: import("@tanstack/react-query").UseMutateFunction<DataGridWebSocket, unknown, EstablishWebsocketParams, unknown>;
reset: () => void;
context: unknown;
failureCount: number;
failureReason: unknown;
isPaused: boolean;
submittedAt: number;
mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<DataGridWebSocket, unknown, EstablishWebsocketParams, unknown>;
} | {
presignedUrl: string | null;
clearPresignedUrl: () => void;
data: undefined;
error: unknown;
variables: EstablishWebsocketParams;
isError: true;
isIdle: false;
isPending: false;
isSuccess: false;
status: "error";
mutate: import("@tanstack/react-query").UseMutateFunction<DataGridWebSocket, unknown, EstablishWebsocketParams, unknown>;
reset: () => void;
context: unknown;
failureCount: number;
failureReason: unknown;
isPaused: boolean;
submittedAt: number;
mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<DataGridWebSocket, unknown, EstablishWebsocketParams, unknown>;
} | {
presignedUrl: string | null;
clearPresignedUrl: () => void;
data: DataGridWebSocket;
error: null;
variables: EstablishWebsocketParams;
isError: false;
isIdle: false;
isPending: false;
isSuccess: true;
status: "success";
mutate: import("@tanstack/react-query").UseMutateFunction<DataGridWebSocket, unknown, EstablishWebsocketParams, unknown>;
reset: () => void;
context: unknown;
failureCount: number;
failureReason: unknown;
isPaused: boolean;
submittedAt: number;
mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<DataGridWebSocket, unknown, EstablishWebsocketParams, unknown>;
};
export {};
//# sourceMappingURL=useEstablishWebsocketConnection.d.ts.map