import { MutationKey, MutationObserver } from '@tanstack/query-core';
import { WeavyType } from '../client/weavy';
import { PollMutationContextType } from '../types/polls.types';
import { PostType } from '../types/posts.types';
export type MutatePollVariables = {
    optionId: number;
    parentType: "posts" | "comments";
    parentId: number;
};
export type PollMutationType = MutationObserver<PostType, Error, MutatePollVariables, PollMutationContextType>;
export declare function getPollMutationOptions(weavy: WeavyType, mutationKey: MutationKey): {
    mutationKey: MutationKey;
    mutationFn: ({ optionId }: MutatePollVariables) => Promise<any>;
    onMutate: (variables: MutatePollVariables) => Promise<object>;
    onSuccess: (data: PostType, variables: MutatePollVariables) => Promise<void>;
};
export declare function getPollMutation(weavy: WeavyType, mutationKey: MutationKey): PollMutationType;
export declare function getVotesOptions(weavy: WeavyType, id: number): {
    queryKey: (string | number)[];
    enabled: boolean;
    queryFn: () => Promise<any>;
};
//# sourceMappingURL=poll.d.ts.map