import { WeavyType } from '../client/weavy';
import { AppUpProperties, ContextualTypes, AppType } from '../types/app.types';
export declare function getAppOptions<T extends AppType = AppType>(weavy: WeavyType, uid: string, type?: ContextualTypes, appData?: AppUpProperties): import('@tanstack/query-core').QueryObserverOptions<T, Error, T, T, import('@tanstack/query-core').QueryKey, never>;
export declare function getApp<T extends AppType = AppType>(weavy: WeavyType, uid: string, type?: ContextualTypes, appData?: AppUpProperties): Promise<T>;
export declare function mutateApp<T extends AppType = AppType>(weavy: WeavyType, app: T, appData?: AppUpProperties): Promise<T>;
export type MutateAppSubscribeProps = {
    subscribe: boolean;
};
export type MutateAppSubscribeContextType = {
    previousSubscribe: boolean | undefined;
    subscribe: boolean;
} | undefined;
export declare function getAppSubscribeMutationOptions(weavy: WeavyType, app: AppType): {
    mutationFn: ({ subscribe }: MutateAppSubscribeProps) => Promise<void>;
    onMutate: (variables: MutateAppSubscribeProps) => Promise<{
        previousSubscribe: boolean | undefined;
        subscribe: boolean;
    }>;
    onError(error: Error, variables: MutateAppSubscribeProps, context: MutateAppSubscribeContextType): void;
};
//# sourceMappingURL=app.d.ts.map