import type { IPollOption } from '../../../polls';
import { type IActivity } from '../interfaces/activity.interface';
import type { IUserContext } from '../../../context';
import { ICacheItem } from '../../feeds/activities-feed/cache';
interface IPreparePollVoteArgs {
    activity: IActivity;
    reactionId: string;
    user?: IUserContext;
}
interface IPreparePollOptionArgs {
    id?: string;
    position: number;
    description: {
        [key: string]: string;
    };
    user?: IUserContext;
}
interface IEnrichPollArgs {
    activity: IActivity;
    activityId: string;
}
interface IEnrichPollVoteArgs extends IPreparePollVoteArgs {
    correctReactionId: string;
}
interface IRemovePollVoteArgs {
    activity: IActivity;
    reactionId: string;
}
export declare const getActivityPollOptions: (pollOption: ICacheItem, locale?: string) => IPollOption[];
export declare function preparePollVote({ activity, reactionId, user }: IPreparePollVoteArgs): void;
export declare function enrichPollVote({ activity, reactionId, correctReactionId, user, }: IEnrichPollVoteArgs): void;
export declare function removePollVote({ activity, reactionId }: IRemovePollVoteArgs): void;
export declare function enrichPoll({ activity, activityId }: IEnrichPollArgs): void;
export declare function preparePollOption({ id, position, description }: IPreparePollOptionArgs, user?: IUserContext): {
    created_at: string;
    updated_at: string;
    id: string;
    kind: string;
    data: {
        description: {
            [key: string]: string;
        };
        position: number;
    };
    parent: string;
} | undefined;
export {};
