import * as _tanstack_react_query from '@tanstack/react-query';
import { UseQueryOptions } from '@tanstack/react-query';
import * as openapi_fetch from 'openapi-fetch';
import * as _rss3_api_core_schema from '@rss3/api-core/schema';
import { getOperationProfitSnapshot } from '@rss3/api-core';

declare function useGetOperationProfitSnapshot(params: Parameters<typeof getOperationProfitSnapshot> | Parameters<typeof getOperationProfitSnapshot>[0], options?: Omit<UseQueryOptions<ReturnType<typeof getOperationProfitSnapshot>>, "queryKey" | "queryFn">): {
    queryKey: (string | {
        afterDate?: string | undefined;
        beforeDate?: string | undefined;
        cursor?: string | undefined;
        limit?: number | undefined;
        nodeAddress?: string | undefined;
    } | [params: {
        afterDate?: string | undefined;
        beforeDate?: string | undefined;
        cursor?: string | undefined;
        limit?: number | undefined;
        nodeAddress?: string | undefined;
    }, init?: Omit<openapi_fetch.FetchOptions<{
        parameters: {
            query?: {
                afterDate?: _rss3_api_core_schema.components["parameters"]["after_date_query"];
                beforeDate?: _rss3_api_core_schema.components["parameters"]["before_date_query"];
                cursor?: _rss3_api_core_schema.components["parameters"]["cursor_query"];
                limit?: _rss3_api_core_schema.components["parameters"]["limit_1_20"];
                node_address?: _rss3_api_core_schema.components["parameters"]["node_address_query"];
            };
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            200: _rss3_api_core_schema.components["responses"]["OperationProfitSnapshotsResponse"];
            400: _rss3_api_core_schema.components["responses"]["400"];
            500: _rss3_api_core_schema.components["responses"]["500"];
        };
    }> | undefined, "params"> | null | undefined, client?: Readonly<{
        baseUrl: string;
    } & Readonly<{
        baseUrl: string;
    } & openapi_fetch.Client<_rss3_api_core_schema.paths, `${string}/${string}`>>> | undefined])[];
    data: Promise<{
        cursor: string;
        data: {
            address: string;
            date: string;
            epochId: number;
            operationPool: string;
        }[];
    }>;
    error: Error;
    isError: true;
    isPending: false;
    isLoading: false;
    isLoadingError: false;
    isRefetchError: true;
    isSuccess: false;
    status: "error";
    dataUpdatedAt: number;
    errorUpdatedAt: number;
    failureCount: number;
    failureReason: Error | null;
    errorUpdateCount: number;
    isFetched: boolean;
    isFetchedAfterMount: boolean;
    isFetching: boolean;
    isInitialLoading: boolean;
    isPaused: boolean;
    isPlaceholderData: boolean;
    isRefetching: boolean;
    isStale: boolean;
    refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<Promise<{
        cursor: string;
        data: {
            address: string;
            date: string;
            epochId: number;
            operationPool: string;
        }[];
    }>, Error>>;
    fetchStatus: _tanstack_react_query.FetchStatus;
    promise: Promise<Promise<{
        cursor: string;
        data: {
            address: string;
            date: string;
            epochId: number;
            operationPool: string;
        }[];
    }>>;
} | {
    queryKey: (string | {
        afterDate?: string | undefined;
        beforeDate?: string | undefined;
        cursor?: string | undefined;
        limit?: number | undefined;
        nodeAddress?: string | undefined;
    } | [params: {
        afterDate?: string | undefined;
        beforeDate?: string | undefined;
        cursor?: string | undefined;
        limit?: number | undefined;
        nodeAddress?: string | undefined;
    }, init?: Omit<openapi_fetch.FetchOptions<{
        parameters: {
            query?: {
                afterDate?: _rss3_api_core_schema.components["parameters"]["after_date_query"];
                beforeDate?: _rss3_api_core_schema.components["parameters"]["before_date_query"];
                cursor?: _rss3_api_core_schema.components["parameters"]["cursor_query"];
                limit?: _rss3_api_core_schema.components["parameters"]["limit_1_20"];
                node_address?: _rss3_api_core_schema.components["parameters"]["node_address_query"];
            };
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            200: _rss3_api_core_schema.components["responses"]["OperationProfitSnapshotsResponse"];
            400: _rss3_api_core_schema.components["responses"]["400"];
            500: _rss3_api_core_schema.components["responses"]["500"];
        };
    }> | undefined, "params"> | null | undefined, client?: Readonly<{
        baseUrl: string;
    } & Readonly<{
        baseUrl: string;
    } & openapi_fetch.Client<_rss3_api_core_schema.paths, `${string}/${string}`>>> | undefined])[];
    data: Promise<{
        cursor: string;
        data: {
            address: string;
            date: string;
            epochId: number;
            operationPool: string;
        }[];
    }>;
    error: null;
    isError: false;
    isPending: false;
    isLoading: false;
    isLoadingError: false;
    isRefetchError: false;
    isSuccess: true;
    status: "success";
    dataUpdatedAt: number;
    errorUpdatedAt: number;
    failureCount: number;
    failureReason: Error | null;
    errorUpdateCount: number;
    isFetched: boolean;
    isFetchedAfterMount: boolean;
    isFetching: boolean;
    isInitialLoading: boolean;
    isPaused: boolean;
    isPlaceholderData: boolean;
    isRefetching: boolean;
    isStale: boolean;
    refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<Promise<{
        cursor: string;
        data: {
            address: string;
            date: string;
            epochId: number;
            operationPool: string;
        }[];
    }>, Error>>;
    fetchStatus: _tanstack_react_query.FetchStatus;
    promise: Promise<Promise<{
        cursor: string;
        data: {
            address: string;
            date: string;
            epochId: number;
            operationPool: string;
        }[];
    }>>;
} | {
    queryKey: (string | {
        afterDate?: string | undefined;
        beforeDate?: string | undefined;
        cursor?: string | undefined;
        limit?: number | undefined;
        nodeAddress?: string | undefined;
    } | [params: {
        afterDate?: string | undefined;
        beforeDate?: string | undefined;
        cursor?: string | undefined;
        limit?: number | undefined;
        nodeAddress?: string | undefined;
    }, init?: Omit<openapi_fetch.FetchOptions<{
        parameters: {
            query?: {
                afterDate?: _rss3_api_core_schema.components["parameters"]["after_date_query"];
                beforeDate?: _rss3_api_core_schema.components["parameters"]["before_date_query"];
                cursor?: _rss3_api_core_schema.components["parameters"]["cursor_query"];
                limit?: _rss3_api_core_schema.components["parameters"]["limit_1_20"];
                node_address?: _rss3_api_core_schema.components["parameters"]["node_address_query"];
            };
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            200: _rss3_api_core_schema.components["responses"]["OperationProfitSnapshotsResponse"];
            400: _rss3_api_core_schema.components["responses"]["400"];
            500: _rss3_api_core_schema.components["responses"]["500"];
        };
    }> | undefined, "params"> | null | undefined, client?: Readonly<{
        baseUrl: string;
    } & Readonly<{
        baseUrl: string;
    } & openapi_fetch.Client<_rss3_api_core_schema.paths, `${string}/${string}`>>> | undefined])[];
    data: undefined;
    error: Error;
    isError: true;
    isPending: false;
    isLoading: false;
    isLoadingError: true;
    isRefetchError: false;
    isSuccess: false;
    status: "error";
    dataUpdatedAt: number;
    errorUpdatedAt: number;
    failureCount: number;
    failureReason: Error | null;
    errorUpdateCount: number;
    isFetched: boolean;
    isFetchedAfterMount: boolean;
    isFetching: boolean;
    isInitialLoading: boolean;
    isPaused: boolean;
    isPlaceholderData: boolean;
    isRefetching: boolean;
    isStale: boolean;
    refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<Promise<{
        cursor: string;
        data: {
            address: string;
            date: string;
            epochId: number;
            operationPool: string;
        }[];
    }>, Error>>;
    fetchStatus: _tanstack_react_query.FetchStatus;
    promise: Promise<Promise<{
        cursor: string;
        data: {
            address: string;
            date: string;
            epochId: number;
            operationPool: string;
        }[];
    }>>;
} | {
    queryKey: (string | {
        afterDate?: string | undefined;
        beforeDate?: string | undefined;
        cursor?: string | undefined;
        limit?: number | undefined;
        nodeAddress?: string | undefined;
    } | [params: {
        afterDate?: string | undefined;
        beforeDate?: string | undefined;
        cursor?: string | undefined;
        limit?: number | undefined;
        nodeAddress?: string | undefined;
    }, init?: Omit<openapi_fetch.FetchOptions<{
        parameters: {
            query?: {
                afterDate?: _rss3_api_core_schema.components["parameters"]["after_date_query"];
                beforeDate?: _rss3_api_core_schema.components["parameters"]["before_date_query"];
                cursor?: _rss3_api_core_schema.components["parameters"]["cursor_query"];
                limit?: _rss3_api_core_schema.components["parameters"]["limit_1_20"];
                node_address?: _rss3_api_core_schema.components["parameters"]["node_address_query"];
            };
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            200: _rss3_api_core_schema.components["responses"]["OperationProfitSnapshotsResponse"];
            400: _rss3_api_core_schema.components["responses"]["400"];
            500: _rss3_api_core_schema.components["responses"]["500"];
        };
    }> | undefined, "params"> | null | undefined, client?: Readonly<{
        baseUrl: string;
    } & Readonly<{
        baseUrl: string;
    } & openapi_fetch.Client<_rss3_api_core_schema.paths, `${string}/${string}`>>> | undefined])[];
    data: undefined;
    error: null;
    isError: false;
    isPending: true;
    isLoading: true;
    isLoadingError: false;
    isRefetchError: false;
    isSuccess: false;
    status: "pending";
    dataUpdatedAt: number;
    errorUpdatedAt: number;
    failureCount: number;
    failureReason: Error | null;
    errorUpdateCount: number;
    isFetched: boolean;
    isFetchedAfterMount: boolean;
    isFetching: boolean;
    isInitialLoading: boolean;
    isPaused: boolean;
    isPlaceholderData: boolean;
    isRefetching: boolean;
    isStale: boolean;
    refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<Promise<{
        cursor: string;
        data: {
            address: string;
            date: string;
            epochId: number;
            operationPool: string;
        }[];
    }>, Error>>;
    fetchStatus: _tanstack_react_query.FetchStatus;
    promise: Promise<Promise<{
        cursor: string;
        data: {
            address: string;
            date: string;
            epochId: number;
            operationPool: string;
        }[];
    }>>;
} | {
    queryKey: (string | {
        afterDate?: string | undefined;
        beforeDate?: string | undefined;
        cursor?: string | undefined;
        limit?: number | undefined;
        nodeAddress?: string | undefined;
    } | [params: {
        afterDate?: string | undefined;
        beforeDate?: string | undefined;
        cursor?: string | undefined;
        limit?: number | undefined;
        nodeAddress?: string | undefined;
    }, init?: Omit<openapi_fetch.FetchOptions<{
        parameters: {
            query?: {
                afterDate?: _rss3_api_core_schema.components["parameters"]["after_date_query"];
                beforeDate?: _rss3_api_core_schema.components["parameters"]["before_date_query"];
                cursor?: _rss3_api_core_schema.components["parameters"]["cursor_query"];
                limit?: _rss3_api_core_schema.components["parameters"]["limit_1_20"];
                node_address?: _rss3_api_core_schema.components["parameters"]["node_address_query"];
            };
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            200: _rss3_api_core_schema.components["responses"]["OperationProfitSnapshotsResponse"];
            400: _rss3_api_core_schema.components["responses"]["400"];
            500: _rss3_api_core_schema.components["responses"]["500"];
        };
    }> | undefined, "params"> | null | undefined, client?: Readonly<{
        baseUrl: string;
    } & Readonly<{
        baseUrl: string;
    } & openapi_fetch.Client<_rss3_api_core_schema.paths, `${string}/${string}`>>> | undefined])[];
    data: undefined;
    error: null;
    isError: false;
    isPending: true;
    isLoadingError: false;
    isRefetchError: false;
    isSuccess: false;
    status: "pending";
    dataUpdatedAt: number;
    errorUpdatedAt: number;
    failureCount: number;
    failureReason: Error | null;
    errorUpdateCount: number;
    isFetched: boolean;
    isFetchedAfterMount: boolean;
    isFetching: boolean;
    isLoading: boolean;
    isInitialLoading: boolean;
    isPaused: boolean;
    isPlaceholderData: boolean;
    isRefetching: boolean;
    isStale: boolean;
    refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<Promise<{
        cursor: string;
        data: {
            address: string;
            date: string;
            epochId: number;
            operationPool: string;
        }[];
    }>, Error>>;
    fetchStatus: _tanstack_react_query.FetchStatus;
    promise: Promise<Promise<{
        cursor: string;
        data: {
            address: string;
            date: string;
            epochId: number;
            operationPool: string;
        }[];
    }>>;
};

export { useGetOperationProfitSnapshot };
