import { ChangeDetectorRef, TemplateRef } from '@angular/core';
import { BasePollComponent } from '../base-poll.component';
import { Poll, PollAnswer, PollOption } from 'stream-chat';
import { ModalContext } from '../../types';
import { CustomTemplatesService } from '../../custom-templates.service';
import { ChatClientService } from '../../chat-client.service';
import { ChannelService } from '../../channel.service';
import { MessageActionsService } from '../../message-actions.service';
import { NotificationService } from '../../notification.service';
import * as i0 from "@angular/core";
declare type Action = 'allOptions' | 'suggestOption' | 'addAnswer' | 'viewComments' | 'viewResults' | 'endVote';
/**
 *
 */
export declare class PollActionsComponent extends BasePollComponent {
    private messageService;
    /**
     * If there are more options than this number, the "See all options" button will be displayed
     */
    maxOptionsDisplayed: number | undefined;
    /**
     * The maximum number of options allowed for the poll, this is defined by Stream API
     */
    maxPollOptions: number;
    name: string;
    options: PollOption[];
    isClosed: boolean;
    allowUserSuggestions: boolean;
    allowAnswers: boolean;
    answerCount: number;
    isOwnPoll: boolean;
    ownAnwer: PollAnswer | undefined;
    selectedAction: Action | undefined;
    isModalOpen: boolean;
    allOptions: TemplateRef<void>;
    suggestOption: TemplateRef<void>;
    addAnswer: TemplateRef<void>;
    viewComments: TemplateRef<void>;
    viewResults: TemplateRef<void>;
    endVote: TemplateRef<void>;
    constructor(customTemplatesService: CustomTemplatesService, chatClientService: ChatClientService, cdRef: ChangeDetectorRef, channelService: ChannelService, notificationService: NotificationService, messageService: MessageActionsService);
    protected stateStoreSelector(poll: Poll, markForCheck: () => void): () => void;
    modalOpened: (action: Action) => void;
    modalClosed: () => void;
    closePoll(): Promise<void>;
    getModalContext(): ModalContext;
    static ɵfac: i0.ɵɵFactoryDeclaration<PollActionsComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<PollActionsComponent, "stream-poll-actions", never, { "maxOptionsDisplayed": "maxOptionsDisplayed"; "maxPollOptions": "maxPollOptions"; }, {}, never, never, false, never>;
}
export {};
