import { BaseHandler } from './base.handler';
import type { AuthConfig } from '../types/auth';
import { InteractionServiceConfig, InteractionFavorOptions, InteractionRewardOptions, StudentQuestionWebhookGetOptions, StudentQuestionWebhookSetOptions, StudentQuestionWebhookDeleteOptions, TeacherAnswerOptions } from '../types/interaction';
export declare class InteractionHandler extends BaseHandler {
    private readonly service;
    constructor(authConfig: AuthConfig, serviceConfig: InteractionServiceConfig);
    sendFavor(options: InteractionFavorOptions): Promise<void>;
    sendRewardMsg(options: InteractionRewardOptions): Promise<void>;
    getStudentQuestionWebhook(options: StudentQuestionWebhookGetOptions): Promise<void>;
    setStudentQuestionWebhook(options: StudentQuestionWebhookSetOptions): Promise<void>;
    deleteStudentQuestionWebhook(options: StudentQuestionWebhookDeleteOptions): Promise<void>;
    sendTeacherAnswer(options: TeacherAnswerOptions): Promise<void>;
    listInteractionEvents(options: Record<string, any>): Promise<void>;
    saveInteractionEvent(options: Record<string, any>): Promise<void>;
    deleteInteractionEvent(options: Record<string, any>): Promise<void>;
    createInvitePoster(options: Record<string, any>): Promise<void>;
    queryDiskVideoCustomScript(options: Record<string, any>): Promise<void>;
    uploadDiskVideoCustomScript(options: Record<string, any>): Promise<void>;
    deleteInteractionScript(options: Record<string, any>): Promise<void>;
    createTaskRewardActivity(options: Record<string, any>): Promise<void>;
    listTaskRewardActivities(options: Record<string, any>): Promise<void>;
    listTaskRewardStats(options: Record<string, any>): Promise<void>;
    listTaskRewardViewerDetails(options: Record<string, any>): Promise<void>;
    updateTaskRewardActivity(options: Record<string, any>): Promise<void>;
    deleteTaskRewardActivity(options: Record<string, any>): Promise<void>;
    stopTaskRewardActivity(options: Record<string, any>): Promise<void>;
    listViewerTaskRewardDetails(options: Record<string, any>): Promise<void>;
    submitViewerTaskRewardAcceptInfo(options: Record<string, any>): Promise<void>;
    private validateRequiredOptions;
    private validateOutputOption;
    private validateOptionalPositiveInteger;
    private validateYn;
    private validateArrayOption;
    private compactOptions;
    private toV4Params;
    private displayGenericResult;
}
//# sourceMappingURL=interaction.handler.d.ts.map