import { EventEmitter, OnInit, OnChanges, SimpleChanges } from '@angular/core';
import { ReactionValue } from '../../../services/feedback/types';
import { ContentReactionMetadata, ContentReactionState, ReactionSubmitEvent, ReactionChangeEvent } from './types';
import * as i0 from "@angular/core";
/**
* Componente para reacciones de contenido con emojis.
*
* @example
* ```html
*
* ```
*/
export declare class ContentReactionComponent implements OnInit, OnChanges {
private feedbackService;
private toast;
private i18n;
private auth;
readonly isConfigured: import("@angular/core").Signal;
props: Partial;
/**
* Referencia al modal inyectada por `ModalService` cuando el componente se
* abre como modal/sheet (`componentProps._modalRef`). Permite cerrarse desde
* dentro (botón de cierre). `undefined` en uso inline.
*/
_modalRef?: {
dismiss: (data?: unknown, role?: string) => Promise;
};
reactionSubmit: EventEmitter;
reactionChange: EventEmitter;
state: import("@angular/core").WritableSignal;
readonly defaultEmojis: [string, string, string];
readonly defaultLabels: [string, string, string];
resolvedProps: import("@angular/core").Signal<{
entityRef: import("../../../services/feedback/types").EntityRef;
question: string;
showComment: boolean;
commentOnValues: ReactionValue[];
commentPlaceholder: string;
maxCommentLength: number;
emojis: [string, string] | [string, string, string];
emojiLabels: [string, string] | [string, string, string];
showThankYou: boolean;
thankYouMessage: string;
disabled: boolean;
readonly: boolean;
variant: "buttons" | "emoji";
showCloseButton: boolean;
}>;
readonly activeReactionValues: import("@angular/core").Signal;
showCommentField: import("@angular/core").Signal;
canSubmit: import("@angular/core").Signal;
constructor();
/** Cierra el modal/sheet contenedor (si el componente se abrió vía ModalService). */
close(): void;
ngOnInit(): void;
ngOnChanges(changes: SimpleChanges): void;
private loadPreviousReaction;
selectReaction(value: ReactionValue): void;
submitReaction(): Promise;
updateComment(event: CustomEvent): void;
getEmoji(index: number): string;
getEmojiLabel(index: number): string;
isSelected(value: ReactionValue): boolean;
t(key: string): string;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}