import { type QueryClient, useMutation } from "@tanstack/vue-query";
import { type Ref } from "vue";
type BaseProps = Record<string, unknown>;
type BaseActions = Record<string, {
    args: unknown;
    result: unknown;
}>;
type BaseParams = Record<string, string>;
interface BasePageType {
    props: BaseProps;
    actions: BaseActions;
    params: BaseParams;
}
interface BasePage extends BasePageType {
    hashes: Record<string, string>;
    title?: string | null;
}
interface PageInit {
    formatTitle?: (title: string) => string;
    queryClient: QueryClient;
}
export declare class Page {
    params: Ref<Record<string, string>, Record<string, string>>;
    formatTitle: (title: string) => string;
    props: Record<string, unknown>;
    actions: {};
    hashes: Record<string, string>;
    queryClient: QueryClient;
    constructor(config: PageInit);
    updateFromPageJson(json: BasePage): void;
    setPageTitle(title: string): void;
}
export declare function usePage<P extends BasePageType>(): {
    setPageTitle: (title: string) => void;
    params: Ref<P["params"]>;
    useQuery<K extends keyof P["props"]>(key: K): {
        data: (0 extends 1 & P["props"][K] ? true : false) extends true ? any : Ref<Readonly<P["props"][K]>>;
        error: Ref<Error, Error>;
        isError: Ref<true, true>;
        isPending: Ref<false, false>;
        isLoading: Ref<false, false>;
        isLoadingError: Ref<false, false>;
        isRefetchError: Ref<true, true>;
        isSuccess: Ref<false, false>;
        isPlaceholderData: Ref<false, false>;
        status: Ref<"error", "error">;
        dataUpdatedAt: Ref<number, number>;
        errorUpdatedAt: Ref<number, number>;
        failureCount: Ref<number, number>;
        failureReason: Ref<Error | null, Error | null>;
        errorUpdateCount: Ref<number, number>;
        isFetched: Ref<boolean, boolean>;
        isFetchedAfterMount: Ref<boolean, boolean>;
        isFetching: Ref<boolean, boolean>;
        isInitialLoading: Ref<boolean, boolean>;
        isPaused: Ref<boolean, boolean>;
        isRefetching: Ref<boolean, boolean>;
        isStale: Ref<boolean, boolean>;
        refetch: (options?: import("@tanstack/vue-query").RefetchOptions) => Promise<import("@tanstack/vue-query").QueryObserverResult<P["props"][K], Error>>;
        fetchStatus: Ref<import("@tanstack/vue-query").FetchStatus, import("@tanstack/vue-query").FetchStatus>;
        promise: Ref<Promise<P["props"][K]>, Promise<P["props"][K]>>;
        suspense: () => Promise<import("@tanstack/vue-query").QueryObserverResult<P["props"][K], Error>>;
    } | {
        data: (0 extends 1 & P["props"][K] ? true : false) extends true ? any : Ref<Readonly<P["props"][K]>>;
        error: Ref<null, null>;
        isError: Ref<false, false>;
        isPending: Ref<false, false>;
        isLoading: Ref<false, false>;
        isLoadingError: Ref<false, false>;
        isRefetchError: Ref<false, false>;
        isSuccess: Ref<true, true>;
        isPlaceholderData: Ref<false, false>;
        status: Ref<"success", "success">;
        dataUpdatedAt: Ref<number, number>;
        errorUpdatedAt: Ref<number, number>;
        failureCount: Ref<number, number>;
        failureReason: Ref<Error | null, Error | null>;
        errorUpdateCount: Ref<number, number>;
        isFetched: Ref<boolean, boolean>;
        isFetchedAfterMount: Ref<boolean, boolean>;
        isFetching: Ref<boolean, boolean>;
        isInitialLoading: Ref<boolean, boolean>;
        isPaused: Ref<boolean, boolean>;
        isRefetching: Ref<boolean, boolean>;
        isStale: Ref<boolean, boolean>;
        refetch: (options?: import("@tanstack/vue-query").RefetchOptions) => Promise<import("@tanstack/vue-query").QueryObserverResult<P["props"][K], Error>>;
        fetchStatus: Ref<import("@tanstack/vue-query").FetchStatus, import("@tanstack/vue-query").FetchStatus>;
        promise: Ref<Promise<P["props"][K]>, Promise<P["props"][K]>>;
        suspense: () => Promise<import("@tanstack/vue-query").QueryObserverResult<P["props"][K], Error>>;
    } | {
        data: (0 extends 1 & P["props"][K] ? true : false) extends true ? any : Ref<Readonly<P["props"][K]>>;
        error: Ref<Error, Error>;
        isError: Ref<true, true>;
        isPending: Ref<false, false>;
        isLoading: Ref<false, false>;
        isLoadingError: Ref<true, true>;
        isRefetchError: Ref<false, false>;
        isSuccess: Ref<false, false>;
        isPlaceholderData: Ref<false, false>;
        status: Ref<"error", "error">;
        dataUpdatedAt: Ref<number, number>;
        errorUpdatedAt: Ref<number, number>;
        failureCount: Ref<number, number>;
        failureReason: Ref<Error | null, Error | null>;
        errorUpdateCount: Ref<number, number>;
        isFetched: Ref<boolean, boolean>;
        isFetchedAfterMount: Ref<boolean, boolean>;
        isFetching: Ref<boolean, boolean>;
        isInitialLoading: Ref<boolean, boolean>;
        isPaused: Ref<boolean, boolean>;
        isRefetching: Ref<boolean, boolean>;
        isStale: Ref<boolean, boolean>;
        refetch: (options?: import("@tanstack/vue-query").RefetchOptions) => Promise<import("@tanstack/vue-query").QueryObserverResult<P["props"][K], Error>>;
        fetchStatus: Ref<import("@tanstack/vue-query").FetchStatus, import("@tanstack/vue-query").FetchStatus>;
        promise: Ref<Promise<P["props"][K]>, Promise<P["props"][K]>>;
        suspense: () => Promise<import("@tanstack/vue-query").QueryObserverResult<P["props"][K], Error>>;
    } | {
        data: (0 extends 1 & P["props"][K] ? true : false) extends true ? any : Ref<Readonly<P["props"][K]>>;
        error: Ref<null, null>;
        isError: Ref<false, false>;
        isPending: Ref<true, true>;
        isLoading: Ref<true, true>;
        isLoadingError: Ref<false, false>;
        isRefetchError: Ref<false, false>;
        isSuccess: Ref<false, false>;
        isPlaceholderData: Ref<false, false>;
        status: Ref<"pending", "pending">;
        dataUpdatedAt: Ref<number, number>;
        errorUpdatedAt: Ref<number, number>;
        failureCount: Ref<number, number>;
        failureReason: Ref<Error | null, Error | null>;
        errorUpdateCount: Ref<number, number>;
        isFetched: Ref<boolean, boolean>;
        isFetchedAfterMount: Ref<boolean, boolean>;
        isFetching: Ref<boolean, boolean>;
        isInitialLoading: Ref<boolean, boolean>;
        isPaused: Ref<boolean, boolean>;
        isRefetching: Ref<boolean, boolean>;
        isStale: Ref<boolean, boolean>;
        refetch: (options?: import("@tanstack/vue-query").RefetchOptions) => Promise<import("@tanstack/vue-query").QueryObserverResult<P["props"][K], Error>>;
        fetchStatus: Ref<import("@tanstack/vue-query").FetchStatus, import("@tanstack/vue-query").FetchStatus>;
        promise: Ref<Promise<P["props"][K]>, Promise<P["props"][K]>>;
        suspense: () => Promise<import("@tanstack/vue-query").QueryObserverResult<P["props"][K], Error>>;
    } | {
        data: (0 extends 1 & P["props"][K] ? true : false) extends true ? any : Ref<Readonly<P["props"][K]>>;
        error: Ref<null, null>;
        isError: Ref<false, false>;
        isPending: Ref<true, true>;
        isLoadingError: Ref<false, false>;
        isRefetchError: Ref<false, false>;
        isSuccess: Ref<false, false>;
        isPlaceholderData: Ref<false, false>;
        status: Ref<"pending", "pending">;
        dataUpdatedAt: Ref<number, number>;
        errorUpdatedAt: Ref<number, number>;
        failureCount: Ref<number, number>;
        failureReason: Ref<Error | null, Error | null>;
        errorUpdateCount: Ref<number, number>;
        isFetched: Ref<boolean, boolean>;
        isFetchedAfterMount: Ref<boolean, boolean>;
        isFetching: Ref<boolean, boolean>;
        isLoading: Ref<boolean, boolean>;
        isInitialLoading: Ref<boolean, boolean>;
        isPaused: Ref<boolean, boolean>;
        isRefetching: Ref<boolean, boolean>;
        isStale: Ref<boolean, boolean>;
        refetch: (options?: import("@tanstack/vue-query").RefetchOptions) => Promise<import("@tanstack/vue-query").QueryObserverResult<P["props"][K], Error>>;
        fetchStatus: Ref<import("@tanstack/vue-query").FetchStatus, import("@tanstack/vue-query").FetchStatus>;
        promise: Ref<Promise<P["props"][K]>, Promise<P["props"][K]>>;
        suspense: () => Promise<import("@tanstack/vue-query").QueryObserverResult<P["props"][K], Error>>;
    } | {
        data: (0 extends 1 & P["props"][K] ? true : false) extends true ? any : Ref<Readonly<P["props"][K]>>;
        isError: Ref<false, false>;
        error: Ref<null, null>;
        isPending: Ref<false, false>;
        isLoading: Ref<false, false>;
        isLoadingError: Ref<false, false>;
        isRefetchError: Ref<false, false>;
        isSuccess: Ref<true, true>;
        isPlaceholderData: Ref<true, true>;
        status: Ref<"success", "success">;
        dataUpdatedAt: Ref<number, number>;
        errorUpdatedAt: Ref<number, number>;
        failureCount: Ref<number, number>;
        failureReason: Ref<Error | null, Error | null>;
        errorUpdateCount: Ref<number, number>;
        isFetched: Ref<boolean, boolean>;
        isFetchedAfterMount: Ref<boolean, boolean>;
        isFetching: Ref<boolean, boolean>;
        isInitialLoading: Ref<boolean, boolean>;
        isPaused: Ref<boolean, boolean>;
        isRefetching: Ref<boolean, boolean>;
        isStale: Ref<boolean, boolean>;
        refetch: (options?: import("@tanstack/vue-query").RefetchOptions) => Promise<import("@tanstack/vue-query").QueryObserverResult<P["props"][K], Error>>;
        fetchStatus: Ref<import("@tanstack/vue-query").FetchStatus, import("@tanstack/vue-query").FetchStatus>;
        promise: Ref<Promise<P["props"][K]>, Promise<P["props"][K]>>;
        suspense: () => Promise<import("@tanstack/vue-query").QueryObserverResult<P["props"][K], Error>>;
    };
    useMutation(key: keyof P["actions"], options?: Parameters<typeof useMutation<P["actions"][keyof P["actions"]]["result"], unknown, P["actions"][keyof P["actions"]]["args"]>>[0]): import("@tanstack/vue-query").UseMutationReturnType<P["actions"][keyof P["actions"]]["result"], unknown, P["actions"][keyof P["actions"]]["args"], unknown, Omit<import("@tanstack/vue-query").MutationObserverIdleResult<P["actions"][keyof P["actions"]]["result"], unknown, P["actions"][keyof P["actions"]]["args"], unknown>, "mutate" | "reset"> | Omit<import("@tanstack/vue-query").MutationObserverLoadingResult<P["actions"][keyof P["actions"]]["result"], unknown, P["actions"][keyof P["actions"]]["args"], unknown>, "mutate" | "reset"> | Omit<import("@tanstack/vue-query").MutationObserverErrorResult<P["actions"][keyof P["actions"]]["result"], unknown, P["actions"][keyof P["actions"]]["args"], unknown>, "mutate" | "reset"> | Omit<import("@tanstack/vue-query").MutationObserverSuccessResult<P["actions"][keyof P["actions"]]["result"], unknown, P["actions"][keyof P["actions"]]["args"], unknown>, "mutate" | "reset">>;
    useForm(key: keyof P["actions"], options: Parameters<typeof useMutation<P["actions"][keyof P["actions"]]["result"], unknown, P["actions"][keyof P["actions"]]["args"]>>[0] & {
        state: P["actions"][keyof P["actions"]]["args"];
    }): {
        mutate(override?: P["actions"][keyof P["actions"]]["args"]): void;
        mutateAsync(override?: P["actions"][keyof P["actions"]]["args"]): Promise<P["actions"][keyof P["actions"]]["result"]>;
        reset: () => void;
        errors: Ref<Record<string, string>, Record<string, string>>;
        state: [P["actions"][keyof P["actions"]]["args"]] extends [Ref<any, any>] ? import("@vue/shared").IfAny<P["actions"][keyof P["actions"]]["args"], Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>, P["actions"][keyof P["actions"]]["args"]> : Ref<import("vue").UnwrapRef<P["actions"][keyof P["actions"]]["args"]>, P["actions"][keyof P["actions"]]["args"] | import("vue").UnwrapRef<P["actions"][keyof P["actions"]]["args"]>>;
        data: Ref<undefined, undefined>;
        error: Ref<null, null>;
        isError: Ref<false, false>;
        isPending: Ref<false, false>;
        isSuccess: Ref<false, false>;
        status: Ref<"idle", "idle">;
        failureCount: Ref<number, number>;
        failureReason: Ref<unknown, unknown>;
        isPaused: Ref<boolean, boolean>;
        variables: Ref<undefined, undefined>;
        isIdle: Ref<true, true>;
        context: Ref<unknown, unknown>;
        submittedAt: Ref<number, number>;
    } | {
        mutate(override?: P["actions"][keyof P["actions"]]["args"]): void;
        mutateAsync(override?: P["actions"][keyof P["actions"]]["args"]): Promise<P["actions"][keyof P["actions"]]["result"]>;
        reset: () => void;
        errors: Ref<Record<string, string>, Record<string, string>>;
        state: [P["actions"][keyof P["actions"]]["args"]] extends [Ref<any, any>] ? import("@vue/shared").IfAny<P["actions"][keyof P["actions"]]["args"], Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>, P["actions"][keyof P["actions"]]["args"]> : Ref<import("vue").UnwrapRef<P["actions"][keyof P["actions"]]["args"]>, P["actions"][keyof P["actions"]]["args"] | import("vue").UnwrapRef<P["actions"][keyof P["actions"]]["args"]>>;
        data: Ref<undefined, undefined>;
        error: Ref<null, null>;
        isError: Ref<false, false>;
        isPending: Ref<true, true>;
        isSuccess: Ref<false, false>;
        status: Ref<"pending", "pending">;
        failureCount: Ref<number, number>;
        failureReason: Ref<unknown, unknown>;
        isPaused: Ref<boolean, boolean>;
        variables: import("@vue/shared").IfAny<P["actions"][keyof P["actions"]]["args"], Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>, [P["actions"][keyof P["actions"]]["args"]] extends [Ref<any, any>] ? P["actions"][keyof P["actions"]]["args"] : Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>>;
        isIdle: Ref<false, false>;
        context: Ref<unknown, unknown>;
        submittedAt: Ref<number, number>;
    } | {
        mutate(override?: P["actions"][keyof P["actions"]]["args"]): void;
        mutateAsync(override?: P["actions"][keyof P["actions"]]["args"]): Promise<P["actions"][keyof P["actions"]]["result"]>;
        reset: () => void;
        errors: Ref<Record<string, string>, Record<string, string>>;
        state: [P["actions"][keyof P["actions"]]["args"]] extends [Ref<any, any>] ? import("@vue/shared").IfAny<P["actions"][keyof P["actions"]]["args"], Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>, P["actions"][keyof P["actions"]]["args"]> : Ref<import("vue").UnwrapRef<P["actions"][keyof P["actions"]]["args"]>, P["actions"][keyof P["actions"]]["args"] | import("vue").UnwrapRef<P["actions"][keyof P["actions"]]["args"]>>;
        data: Ref<undefined, undefined>;
        error: Ref<unknown, unknown>;
        isError: Ref<true, true>;
        isPending: Ref<false, false>;
        isSuccess: Ref<false, false>;
        status: Ref<"error", "error">;
        failureCount: Ref<number, number>;
        failureReason: Ref<unknown, unknown>;
        isPaused: Ref<boolean, boolean>;
        variables: import("@vue/shared").IfAny<P["actions"][keyof P["actions"]]["args"], Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>, [P["actions"][keyof P["actions"]]["args"]] extends [Ref<any, any>] ? P["actions"][keyof P["actions"]]["args"] : Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>>;
        isIdle: Ref<false, false>;
        context: Ref<unknown, unknown>;
        submittedAt: Ref<number, number>;
    } | {
        mutate(override?: P["actions"][keyof P["actions"]]["args"]): void;
        mutateAsync(override?: P["actions"][keyof P["actions"]]["args"]): Promise<P["actions"][keyof P["actions"]]["result"]>;
        reset: () => void;
        errors: Ref<Record<string, string>, Record<string, string>>;
        state: [P["actions"][keyof P["actions"]]["args"]] extends [Ref<any, any>] ? import("@vue/shared").IfAny<P["actions"][keyof P["actions"]]["args"], Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>, P["actions"][keyof P["actions"]]["args"]> : Ref<import("vue").UnwrapRef<P["actions"][keyof P["actions"]]["args"]>, P["actions"][keyof P["actions"]]["args"] | import("vue").UnwrapRef<P["actions"][keyof P["actions"]]["args"]>>;
        data: import("@vue/shared").IfAny<P["actions"][keyof P["actions"]]["result"], Ref<P["actions"][keyof P["actions"]]["result"], P["actions"][keyof P["actions"]]["result"]>, [P["actions"][keyof P["actions"]]["result"]] extends [Ref<any, any>] ? P["actions"][keyof P["actions"]]["result"] : Ref<P["actions"][keyof P["actions"]]["result"], P["actions"][keyof P["actions"]]["result"]>>;
        error: Ref<null, null>;
        isError: Ref<false, false>;
        isPending: Ref<false, false>;
        isSuccess: Ref<true, true>;
        status: Ref<"success", "success">;
        failureCount: Ref<number, number>;
        failureReason: Ref<unknown, unknown>;
        isPaused: Ref<boolean, boolean>;
        variables: import("@vue/shared").IfAny<P["actions"][keyof P["actions"]]["args"], Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>, [P["actions"][keyof P["actions"]]["args"]] extends [Ref<any, any>] ? P["actions"][keyof P["actions"]]["args"] : Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>>;
        isIdle: Ref<false, false>;
        context: Ref<unknown, unknown>;
        submittedAt: Ref<number, number>;
    };
    useFormData(key: keyof P["actions"], options: Parameters<typeof useMutation<P["actions"][keyof P["actions"]]["result"], unknown, P["actions"][keyof P["actions"]]["args"]>>[0] & {
        state: P["actions"][keyof P["actions"]]["args"];
        files: string[];
    }): {
        mutate(override?: P["actions"][keyof P["actions"]]["args"]): void;
        mutateAsync(override?: P["actions"][keyof P["actions"]]["args"]): Promise<P["actions"][keyof P["actions"]]["result"]>;
        reset: () => void;
        errors: Ref<Record<string, string>, Record<string, string>>;
        state: [P["actions"][keyof P["actions"]]["args"]] extends [Ref<any, any>] ? import("@vue/shared").IfAny<P["actions"][keyof P["actions"]]["args"], Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>, P["actions"][keyof P["actions"]]["args"]> : Ref<import("vue").UnwrapRef<P["actions"][keyof P["actions"]]["args"]>, P["actions"][keyof P["actions"]]["args"] | import("vue").UnwrapRef<P["actions"][keyof P["actions"]]["args"]>>;
        data: Ref<undefined, undefined>;
        error: Ref<null, null>;
        isError: Ref<false, false>;
        isPending: Ref<false, false>;
        isSuccess: Ref<false, false>;
        status: Ref<"idle", "idle">;
        failureCount: Ref<number, number>;
        failureReason: Ref<unknown, unknown>;
        isPaused: Ref<boolean, boolean>;
        variables: Ref<undefined, undefined>;
        isIdle: Ref<true, true>;
        context: Ref<unknown, unknown>;
        submittedAt: Ref<number, number>;
    } | {
        mutate(override?: P["actions"][keyof P["actions"]]["args"]): void;
        mutateAsync(override?: P["actions"][keyof P["actions"]]["args"]): Promise<P["actions"][keyof P["actions"]]["result"]>;
        reset: () => void;
        errors: Ref<Record<string, string>, Record<string, string>>;
        state: [P["actions"][keyof P["actions"]]["args"]] extends [Ref<any, any>] ? import("@vue/shared").IfAny<P["actions"][keyof P["actions"]]["args"], Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>, P["actions"][keyof P["actions"]]["args"]> : Ref<import("vue").UnwrapRef<P["actions"][keyof P["actions"]]["args"]>, P["actions"][keyof P["actions"]]["args"] | import("vue").UnwrapRef<P["actions"][keyof P["actions"]]["args"]>>;
        data: Ref<undefined, undefined>;
        error: Ref<null, null>;
        isError: Ref<false, false>;
        isPending: Ref<true, true>;
        isSuccess: Ref<false, false>;
        status: Ref<"pending", "pending">;
        failureCount: Ref<number, number>;
        failureReason: Ref<unknown, unknown>;
        isPaused: Ref<boolean, boolean>;
        variables: import("@vue/shared").IfAny<P["actions"][keyof P["actions"]]["args"], Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>, [P["actions"][keyof P["actions"]]["args"]] extends [Ref<any, any>] ? P["actions"][keyof P["actions"]]["args"] : Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>>;
        isIdle: Ref<false, false>;
        context: Ref<unknown, unknown>;
        submittedAt: Ref<number, number>;
    } | {
        mutate(override?: P["actions"][keyof P["actions"]]["args"]): void;
        mutateAsync(override?: P["actions"][keyof P["actions"]]["args"]): Promise<P["actions"][keyof P["actions"]]["result"]>;
        reset: () => void;
        errors: Ref<Record<string, string>, Record<string, string>>;
        state: [P["actions"][keyof P["actions"]]["args"]] extends [Ref<any, any>] ? import("@vue/shared").IfAny<P["actions"][keyof P["actions"]]["args"], Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>, P["actions"][keyof P["actions"]]["args"]> : Ref<import("vue").UnwrapRef<P["actions"][keyof P["actions"]]["args"]>, P["actions"][keyof P["actions"]]["args"] | import("vue").UnwrapRef<P["actions"][keyof P["actions"]]["args"]>>;
        data: Ref<undefined, undefined>;
        error: Ref<unknown, unknown>;
        isError: Ref<true, true>;
        isPending: Ref<false, false>;
        isSuccess: Ref<false, false>;
        status: Ref<"error", "error">;
        failureCount: Ref<number, number>;
        failureReason: Ref<unknown, unknown>;
        isPaused: Ref<boolean, boolean>;
        variables: import("@vue/shared").IfAny<P["actions"][keyof P["actions"]]["args"], Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>, [P["actions"][keyof P["actions"]]["args"]] extends [Ref<any, any>] ? P["actions"][keyof P["actions"]]["args"] : Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>>;
        isIdle: Ref<false, false>;
        context: Ref<unknown, unknown>;
        submittedAt: Ref<number, number>;
    } | {
        mutate(override?: P["actions"][keyof P["actions"]]["args"]): void;
        mutateAsync(override?: P["actions"][keyof P["actions"]]["args"]): Promise<P["actions"][keyof P["actions"]]["result"]>;
        reset: () => void;
        errors: Ref<Record<string, string>, Record<string, string>>;
        state: [P["actions"][keyof P["actions"]]["args"]] extends [Ref<any, any>] ? import("@vue/shared").IfAny<P["actions"][keyof P["actions"]]["args"], Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>, P["actions"][keyof P["actions"]]["args"]> : Ref<import("vue").UnwrapRef<P["actions"][keyof P["actions"]]["args"]>, P["actions"][keyof P["actions"]]["args"] | import("vue").UnwrapRef<P["actions"][keyof P["actions"]]["args"]>>;
        data: import("@vue/shared").IfAny<P["actions"][keyof P["actions"]]["result"], Ref<P["actions"][keyof P["actions"]]["result"], P["actions"][keyof P["actions"]]["result"]>, [P["actions"][keyof P["actions"]]["result"]] extends [Ref<any, any>] ? P["actions"][keyof P["actions"]]["result"] : Ref<P["actions"][keyof P["actions"]]["result"], P["actions"][keyof P["actions"]]["result"]>>;
        error: Ref<null, null>;
        isError: Ref<false, false>;
        isPending: Ref<false, false>;
        isSuccess: Ref<true, true>;
        status: Ref<"success", "success">;
        failureCount: Ref<number, number>;
        failureReason: Ref<unknown, unknown>;
        isPaused: Ref<boolean, boolean>;
        variables: import("@vue/shared").IfAny<P["actions"][keyof P["actions"]]["args"], Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>, [P["actions"][keyof P["actions"]]["args"]] extends [Ref<any, any>] ? P["actions"][keyof P["actions"]]["args"] : Ref<P["actions"][keyof P["actions"]]["args"], P["actions"][keyof P["actions"]]["args"]>>;
        isIdle: Ref<false, false>;
        context: Ref<unknown, unknown>;
        submittedAt: Ref<number, number>;
    };
};
export {};
//# sourceMappingURL=page.d.ts.map