import { OutputFormat } from '../handlers/base.handler';
export interface QaSendOptions {
    channelId: string;
    questionId: string;
    duration?: number;
    output?: OutputFormat;
}
export interface QaListOptions {
    channelId: string;
    output?: OutputFormat;
}
export interface QaStopOptions {
    channelId: string;
    questionId: string;
    output?: OutputFormat;
}
export interface QaSendTimesOptions {
    channelId: string;
    output?: OutputFormat;
}
export interface QaAnswerListOptions {
    channelId: string;
    sessionId?: string;
    startDate?: string;
    endDate?: string;
    output?: OutputFormat;
}
export interface QaQuestionListOptions {
    channelId: string;
    begin?: number;
    end?: number;
    output?: OutputFormat;
}
export interface QaAddEditOptions {
    channelId: string;
    questionId?: string;
    type: string;
    answer: string;
    name: string;
    itemType: number;
    options?: string[];
    tips?: string[];
    force?: boolean;
    output?: OutputFormat;
}
export interface QaDeleteQuestionOptions {
    channelId: string;
    questionId: string;
    force?: boolean;
    output?: OutputFormat;
}
export interface QaSendResultOptions {
    channelId: string;
    questionId: string;
    force?: boolean;
    output?: OutputFormat;
}
export interface QuestionnaireQuestionItem {
    name: string;
    type: 'R' | 'C' | 'Q' | 'J' | 'X';
    options?: string[];
    answer?: string;
    scoreEnabled?: 'Y' | 'N';
    score?: number;
    required?: 'Y' | 'N';
}
export interface QuestionnaireCreateOptions {
    channelId: string;
    title: string;
    questions: string | QuestionnaireQuestionItem[];
    customQuestionnaireId?: string;
    autoPublishTime?: number;
    autoEndTime?: number;
    privacyEnabled?: 'Y' | 'N';
    privacyContent?: string;
    output?: OutputFormat;
}
export interface QuestionnaireResultListOptions {
    channelId: string;
    page?: number;
    size?: number;
    sessionId?: string;
    startDate?: string;
    endDate?: string;
    output?: OutputFormat;
}
export interface QuestionnaireListOptions {
    channelId: string;
    startTime?: number;
    endTime?: number;
    page?: number;
    size?: number;
    output?: OutputFormat;
}
export interface QuestionnaireDetailOptions {
    channelId: string;
    questionnaireId: string;
    output?: OutputFormat;
}
export interface QuestionnaireResultOptions {
    channelId: string;
    questionnaireId?: string;
    sessionId?: string;
    startDate?: string;
    endDate?: string;
    output?: OutputFormat;
}
export interface QuestionnaireBatchCreateOptions {
    questionnaires: string | Record<string, unknown>[];
    force?: boolean;
    output?: OutputFormat;
}
export interface QaQuestionnaireServiceConfig {
    baseUrl: string;
    timeout: number;
    debug: boolean;
}
export interface SendQaParams {
    channelId: number;
    questionId: string;
    duration?: number | undefined;
}
export interface ListQaParams {
    channelId: string;
}
export interface StopQaParams {
    channelId: number;
    questionId: string;
}
export interface ListQuestionSendTimeParams {
    channelId: string;
}
export interface GetAnswerListParams {
    channelId: string;
    sessionId?: string;
    startDate?: string;
    endDate?: string;
}
export interface GetQuestionListParams {
    channelId: string;
    begin?: number;
    end?: number;
}
export interface AddEditQuestionParams {
    channelId: string;
    questionId?: string;
    type: string;
    answer: string;
    name: string;
    itemType: number;
    options?: string[];
    tips?: string[];
}
export interface DeleteQuestionParams {
    channelId: string;
    questionId: string;
}
export interface SendQuestionResultParams {
    channelId: string;
    questionId: string;
}
export interface CreateQuestionnaireParams {
    channelId: string;
    title: string;
    questions: QuestionnaireQuestionItem[];
    customQuestionnaireId?: string | undefined;
    autoPublishTime?: number | undefined;
    autoEndTime?: number | undefined;
    privacyEnabled?: 'Y' | 'N' | undefined;
    privacyContent?: string | undefined;
}
export interface ListQuestionnaireResultsParams {
    channelId: string;
    page?: number | undefined;
    pageSize?: number | undefined;
    sessionId?: string | undefined;
    startDate?: string | undefined;
    endDate?: string | undefined;
}
export interface ListQuestionnaireParams {
    channelId: string;
    startTime?: number;
    endTime?: number;
    page?: number;
    pageSize?: number;
}
export interface GetQuestionnaireDetailParams {
    channelId: string;
    questionnaireId: string;
}
export interface GetQuestionnaireResultParams {
    channelId: string;
    questionnaireId?: string;
    sessionId?: string;
    startDate?: string;
    endDate?: string;
}
export interface BatchCreateQuestionnaireParams {
    questionnaires: Record<string, unknown>[];
}
//# sourceMappingURL=qa.d.ts.map