/**
 * soccr.io API
 * An ASP.NET Core Web API for managing Soccer items
 *
 * The version of the OpenAPI document: v1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import { HttpHeaders } from '@angular/common/http';
import { Observable } from 'rxjs';
import { CommonConcern } from '../model/models';
import { CommonResult } from '../model/models';
import { FeedbackConcernDetail } from '../model/models';
import { FeedbackConcernEntry } from '../model/models';
import { FeedbackContactStatus } from '../model/models';
import { FeedbackContextEntry } from '../model/models';
import { FeedbackEntry } from '../model/models';
import { FeedbackReviewStatus } from '../model/models';
import { MailingListEntry } from '../model/models';
import { Configuration } from '../configuration';
export interface ContactMeServiceInterface {
    defaultHeaders: HttpHeaders;
    configuration: Configuration;
    /**
     *
     *
     * @param FeedbackID
     */
    commonConcernsSelectEntry(FeedbackID?: number, extraHttpRequestParams?: any): Observable<Array<FeedbackConcernDetail>>;
    /**
     *
     *
     */
    commonConcernsSelectList(extraHttpRequestParams?: any): Observable<Array<CommonConcern>>;
    /**
     *
     *
     * @param CommonConcernTypeID
     */
    commonConcernsSelectListByType(CommonConcernTypeID?: number, extraHttpRequestParams?: any): Observable<Array<CommonConcern>>;
    /**
     *
     *
     * @param FeedbackConcernEntry
     */
    feedbackCommonConcernsInsert(FeedbackConcernEntry?: Array<FeedbackConcernEntry>, extraHttpRequestParams?: any): Observable<CommonResult>;
    /**
     *
     *
     */
    feedbackContactStatusSelectAll(extraHttpRequestParams?: any): Observable<Array<FeedbackContactStatus>>;
    /**
     *
     *
     * @param FeedbackID
     */
    feedbackDashboard(FeedbackID?: number, extraHttpRequestParams?: any): Observable<Array<FeedbackContextEntry>>;
    /**
     *
     *
     * @param FeedbackID
     */
    feedbackDelete(FeedbackID?: number, extraHttpRequestParams?: any): Observable<CommonResult>;
    /**
     *
     *
     * @param FeedbackEntry
     */
    feedbackInsertBasicAsync(FeedbackEntry?: FeedbackEntry, extraHttpRequestParams?: any): Observable<CommonResult>;
    /**
     *
     *
     */
    feedbackReviewStatusSelectAll(extraHttpRequestParams?: any): Observable<Array<FeedbackReviewStatus>>;
    /**
     *
     *
     * @param FeedbackContext
     * @param FeedbackContextKey
     * @param OpenOnly
     * @param ContactRequestedOnly
     * @param UncontactedOnly
     */
    feedbackSelectContext(FeedbackContext?: string, FeedbackContextKey?: number, OpenOnly?: boolean, ContactRequestedOnly?: boolean, UncontactedOnly?: boolean, extraHttpRequestParams?: any): Observable<Array<FeedbackEntry>>;
    /**
     *
     *
     * @param FeedbackID
     */
    feedbackSelectItem(FeedbackID?: number, extraHttpRequestParams?: any): Observable<FeedbackEntry>;
    /**
     *
     *
     * @param FeedbackEntry
     */
    feedbackUpdateContactResolution(FeedbackEntry?: FeedbackEntry, extraHttpRequestParams?: any): Observable<CommonResult>;
    /**
     *
     *
     * @param FeedbackEntry
     */
    feedbackUpdateReviewStatus(FeedbackEntry?: FeedbackEntry, extraHttpRequestParams?: any): Observable<CommonResult>;
    /**
     *
     *
     */
    getContactMeTargetAccountNames(extraHttpRequestParams?: any): Observable<Array<string>>;
    /**
     *
     *
     * @param MailingListEntry
     */
    mailingListInsertBasicAsync(MailingListEntry?: MailingListEntry, extraHttpRequestParams?: any): Observable<CommonResult>;
    /**
     *
     *
     * @param MailingListEntry
     */
    mailingListRemoveAsync(MailingListEntry?: MailingListEntry, extraHttpRequestParams?: any): Observable<CommonResult>;
    /**
     *
     *
     * @param MailingListContext
     * @param MailingListContextKey
     */
    mailingListSelectContext(MailingListContext?: string, MailingListContextKey?: number, extraHttpRequestParams?: any): Observable<Array<MailingListEntry>>;
    /**
     *
     *
     * @param TargetIndex
     * @param Subject
     * @param Body
     * @param IsHtml
     */
    sendContactMeEmailAsync(TargetIndex?: number, Subject?: string, Body?: string, IsHtml?: boolean, extraHttpRequestParams?: any): Observable<{}>;
    /**
     *
     *
     * @param TargetIndex
     */
    sendContactMeTestEmail(TargetIndex?: number, extraHttpRequestParams?: any): Observable<{}>;
}
