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