import { HttpClient, HttpHeaders, HttpResponse, HttpEvent } from '@angular/common/http';
import { Observable } from 'rxjs';
import { ApiResponseObjectListMapstringobject } from '../model/apiResponseObjectListMapstringobject';
import { ApiResponseObjectListSafeguardBlockedItemDTO } from '../model/apiResponseObjectListSafeguardBlockedItemDTO';
import { ApiResponseObjectListSafeguardDetail } from '../model/apiResponseObjectListSafeguardDetail';
import { ApiResponseObjectListSafeguardExclusionDTO } from '../model/apiResponseObjectListSafeguardExclusionDTO';
import { ApiResponseObjectListSafeguardRuleMasterEntity } from '../model/apiResponseObjectListSafeguardRuleMasterEntity';
import { ApiResponseObjectMaplongstring } from '../model/apiResponseObjectMaplongstring';
import { ApiResponseObjectMapstringlong } from '../model/apiResponseObjectMapstringlong';
import { ApiResponseObjectSafeguardDetail } from '../model/apiResponseObjectSafeguardDetail';
import { ApiResponseObjectSafeguardExclusionDTO } from '../model/apiResponseObjectSafeguardExclusionDTO';
import { ApiResponseObjectSafeguardResponseDTO } from '../model/apiResponseObjectSafeguardResponseDTO';
import { ApiResponseObjectstring } from '../model/apiResponseObjectstring';
import { SafeguardExclusionDTO } from '../model/safeguardExclusionDTO';
import { SafeguardRequestDTO } from '../model/safeguardRequestDTO';
import { Configuration } from '../configuration';
import * as i0 from "@angular/core";
export declare class SafeguardControllerService {
    protected httpClient: HttpClient;
    protected basePath: string;
    defaultHeaders: HttpHeaders;
    configuration: Configuration;
    constructor(httpClient: HttpClient, basePath: string, configuration: Configuration);
    /**
     * @param consumes string[] mime-types
     * @return true: consumes contains 'multipart/form-data', false: otherwise
     */
    private canConsumeForm;
    /**
     * API to create safeguard exclusion list for a campaign
     *
     * @param safeguardExclusionDTO safeguardExclusionDTO
     * @param reqId request id
     * @param token Auth Token
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    createSafeguardExclusionListUsingPOST(safeguardExclusionDTO: SafeguardExclusionDTO, reqId?: string, token?: string, observe?: 'body', reportProgress?: boolean): Observable<ApiResponseObjectSafeguardExclusionDTO>;
    createSafeguardExclusionListUsingPOST(safeguardExclusionDTO: SafeguardExclusionDTO, reqId?: string, token?: string, observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<ApiResponseObjectSafeguardExclusionDTO>>;
    createSafeguardExclusionListUsingPOST(safeguardExclusionDTO: SafeguardExclusionDTO, reqId?: string, token?: string, observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<ApiResponseObjectSafeguardExclusionDTO>>;
    /**
     * API to create safeguard rules
     *
     * @param safeguardRequestDTO safeguardRequestDTO
     * @param reqId request id
     * @param token Auth Token
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    createSafeguardRuleUsingPOST(safeguardRequestDTO: SafeguardRequestDTO, reqId?: string, token?: string, observe?: 'body', reportProgress?: boolean): Observable<ApiResponseObjectSafeguardResponseDTO>;
    createSafeguardRuleUsingPOST(safeguardRequestDTO: SafeguardRequestDTO, reqId?: string, token?: string, observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<ApiResponseObjectSafeguardResponseDTO>>;
    createSafeguardRuleUsingPOST(safeguardRequestDTO: SafeguardRequestDTO, reqId?: string, token?: string, observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<ApiResponseObjectSafeguardResponseDTO>>;
    /**
     * API to fetch count of all the blocked items for the specific strategy mapped to safeguard rule
     *
     * @param safeguardId safeguardId
     * @param strategyId strategyId
     * @param reqId request id
     * @param token Auth Token
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getBlockedItemCountUsingGET(safeguardId: number, strategyId: number, reqId?: string, token?: string, observe?: 'body', reportProgress?: boolean): Observable<ApiResponseObjectMapstringlong>;
    getBlockedItemCountUsingGET(safeguardId: number, strategyId: number, reqId?: string, token?: string, observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<ApiResponseObjectMapstringlong>>;
    getBlockedItemCountUsingGET(safeguardId: number, strategyId: number, reqId?: string, token?: string, observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<ApiResponseObjectMapstringlong>>;
    /**
     * API to fetch all the blocked item details for the specific strategy mapped to safeguard rule
     *
     * @param safeguardId safeguardId
     * @param strategyId strategyId
     * @param reqId request id
     * @param token Auth Token
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getBlockedItemDetailsUsingGET(safeguardId: number, strategyId: number, reqId?: string, token?: string, observe?: 'body', reportProgress?: boolean): Observable<ApiResponseObjectListSafeguardBlockedItemDTO>;
    getBlockedItemDetailsUsingGET(safeguardId: number, strategyId: number, reqId?: string, token?: string, observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<ApiResponseObjectListSafeguardBlockedItemDTO>>;
    getBlockedItemDetailsUsingGET(safeguardId: number, strategyId: number, reqId?: string, token?: string, observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<ApiResponseObjectListSafeguardBlockedItemDTO>>;
    /**
     * API to fetch exclusion list details for a campaign
     *
     * @param campaignId campaignId
     * @param reqId request id
     * @param token Auth Token
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getSafeguardExclusionListUsingGET(campaignId: number, reqId?: string, token?: string, observe?: 'body', reportProgress?: boolean): Observable<ApiResponseObjectListSafeguardExclusionDTO>;
    getSafeguardExclusionListUsingGET(campaignId: number, reqId?: string, token?: string, observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<ApiResponseObjectListSafeguardExclusionDTO>>;
    getSafeguardExclusionListUsingGET(campaignId: number, reqId?: string, token?: string, observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<ApiResponseObjectListSafeguardExclusionDTO>>;
    /**
     * API to get details of specific safeguard rules
     *
     * @param safeguardId safeguardId
     * @param reqId request id
     * @param token Auth Token
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getSafeguardRuleDetailsUsingGET(safeguardId: number, reqId?: string, token?: string, observe?: 'body', reportProgress?: boolean): Observable<ApiResponseObjectSafeguardDetail>;
    getSafeguardRuleDetailsUsingGET(safeguardId: number, reqId?: string, token?: string, observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<ApiResponseObjectSafeguardDetail>>;
    getSafeguardRuleDetailsUsingGET(safeguardId: number, reqId?: string, token?: string, observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<ApiResponseObjectSafeguardDetail>>;
    /**
     * API to fetch all the filter that are available to be configured
     *
     * @param reqId request id
     * @param token Auth Token
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getSafeguardRuleFiltersUsingGET(reqId?: string, token?: string, observe?: 'body', reportProgress?: boolean): Observable<ApiResponseObjectListSafeguardRuleMasterEntity>;
    getSafeguardRuleFiltersUsingGET(reqId?: string, token?: string, observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<ApiResponseObjectListSafeguardRuleMasterEntity>>;
    getSafeguardRuleFiltersUsingGET(reqId?: string, token?: string, observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<ApiResponseObjectListSafeguardRuleMasterEntity>>;
    /**
     * API to get list of safeguard rules for given strategy/ campaign
     *
     * @param entity entity
     * @param id id
     * @param reqId request id
     * @param token Auth Token
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getSafeguardRulesListUsingGET(entity: 'LICENSEE' | 'ADVERTISER' | 'CAMPAIGN' | 'STRATEGY' | 'CREATIVE' | 'AGGREGATOR' | 'AUDIENCE' | 'APP_AUDIENCE' | 'WEB_AUDIENCE' | 'LOOKALIKE_AUDIENCE' | 'DMP_AUDIENCE' | 'PIXEL' | 'SITE' | 'COUNTRY' | 'STATE' | 'CITY' | 'OS' | 'PRICING' | 'CURRENCY' | 'LANGUAGE' | 'TIMEZONE' | 'CATEGORY' | 'MMP' | 'CDTYPE' | 'CDSUBTYPE' | 'DEVICE' | 'DELIVERY_PRIORITY' | 'PACING_TYPE' | 'OS_VERSION' | 'DEVICE_MODEL' | 'DEVICE_BRAND' | 'SOURCE_TYPE' | 'PLATFORM' | 'APP_CATEGORY' | 'BROWSER' | 'CALL_TO_ACTION' | 'CREATIVE_SIZE' | 'DEAL_CATEGORY' | 'ADVERTISER_REGION' | 'CLICK_DESTINATION' | 'ADVERTISER_LOGO' | 'LOSS_REASON_CODES' | 'CREATIVE_SET' | 'USER_FREQUENCY_BUCKET_MAPPING' | 'CREATIVE_SET_TYPE' | 'AUDIENCE_UU_COUNT' | 'STRATEGY_TEMPLATE' | 'FEED_PRODUCT_CATEGORY' | 'STRATEGY_CREATIVE_MAPPING' | 'MMP_EVENT_NAME' | 'CONTENT_GENRE' | 'CONTENT_LANGUAGE' | 'AD_POD' | 'AD_BREAK' | 'INCREMENTALITY_TEST' | 'DEAL' | 'WEATHER' | 'ADO_KKTU' | 'CLICK_SIGNING' | 'CLICK_SIGNING_AUDIT', id: number, reqId?: string, token?: string, observe?: 'body', reportProgress?: boolean): Observable<ApiResponseObjectListSafeguardDetail>;
    getSafeguardRulesListUsingGET(entity: 'LICENSEE' | 'ADVERTISER' | 'CAMPAIGN' | 'STRATEGY' | 'CREATIVE' | 'AGGREGATOR' | 'AUDIENCE' | 'APP_AUDIENCE' | 'WEB_AUDIENCE' | 'LOOKALIKE_AUDIENCE' | 'DMP_AUDIENCE' | 'PIXEL' | 'SITE' | 'COUNTRY' | 'STATE' | 'CITY' | 'OS' | 'PRICING' | 'CURRENCY' | 'LANGUAGE' | 'TIMEZONE' | 'CATEGORY' | 'MMP' | 'CDTYPE' | 'CDSUBTYPE' | 'DEVICE' | 'DELIVERY_PRIORITY' | 'PACING_TYPE' | 'OS_VERSION' | 'DEVICE_MODEL' | 'DEVICE_BRAND' | 'SOURCE_TYPE' | 'PLATFORM' | 'APP_CATEGORY' | 'BROWSER' | 'CALL_TO_ACTION' | 'CREATIVE_SIZE' | 'DEAL_CATEGORY' | 'ADVERTISER_REGION' | 'CLICK_DESTINATION' | 'ADVERTISER_LOGO' | 'LOSS_REASON_CODES' | 'CREATIVE_SET' | 'USER_FREQUENCY_BUCKET_MAPPING' | 'CREATIVE_SET_TYPE' | 'AUDIENCE_UU_COUNT' | 'STRATEGY_TEMPLATE' | 'FEED_PRODUCT_CATEGORY' | 'STRATEGY_CREATIVE_MAPPING' | 'MMP_EVENT_NAME' | 'CONTENT_GENRE' | 'CONTENT_LANGUAGE' | 'AD_POD' | 'AD_BREAK' | 'INCREMENTALITY_TEST' | 'DEAL' | 'WEATHER' | 'ADO_KKTU' | 'CLICK_SIGNING' | 'CLICK_SIGNING_AUDIT', id: number, reqId?: string, token?: string, observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<ApiResponseObjectListSafeguardDetail>>;
    getSafeguardRulesListUsingGET(entity: 'LICENSEE' | 'ADVERTISER' | 'CAMPAIGN' | 'STRATEGY' | 'CREATIVE' | 'AGGREGATOR' | 'AUDIENCE' | 'APP_AUDIENCE' | 'WEB_AUDIENCE' | 'LOOKALIKE_AUDIENCE' | 'DMP_AUDIENCE' | 'PIXEL' | 'SITE' | 'COUNTRY' | 'STATE' | 'CITY' | 'OS' | 'PRICING' | 'CURRENCY' | 'LANGUAGE' | 'TIMEZONE' | 'CATEGORY' | 'MMP' | 'CDTYPE' | 'CDSUBTYPE' | 'DEVICE' | 'DELIVERY_PRIORITY' | 'PACING_TYPE' | 'OS_VERSION' | 'DEVICE_MODEL' | 'DEVICE_BRAND' | 'SOURCE_TYPE' | 'PLATFORM' | 'APP_CATEGORY' | 'BROWSER' | 'CALL_TO_ACTION' | 'CREATIVE_SIZE' | 'DEAL_CATEGORY' | 'ADVERTISER_REGION' | 'CLICK_DESTINATION' | 'ADVERTISER_LOGO' | 'LOSS_REASON_CODES' | 'CREATIVE_SET' | 'USER_FREQUENCY_BUCKET_MAPPING' | 'CREATIVE_SET_TYPE' | 'AUDIENCE_UU_COUNT' | 'STRATEGY_TEMPLATE' | 'FEED_PRODUCT_CATEGORY' | 'STRATEGY_CREATIVE_MAPPING' | 'MMP_EVENT_NAME' | 'CONTENT_GENRE' | 'CONTENT_LANGUAGE' | 'AD_POD' | 'AD_BREAK' | 'INCREMENTALITY_TEST' | 'DEAL' | 'WEATHER' | 'ADO_KKTU' | 'CLICK_SIGNING' | 'CLICK_SIGNING_AUDIT', id: number, reqId?: string, token?: string, observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<ApiResponseObjectListSafeguardDetail>>;
    /**
     * API to manually run any of the safeguard rules
     *
     * @param safeguardId safeguardId
     * @param reqId request id
     * @param token Auth Token
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    safeguardRuleRunNowUsingGET(safeguardId: number, reqId?: string, token?: string, observe?: 'body', reportProgress?: boolean): Observable<ApiResponseObjectstring>;
    safeguardRuleRunNowUsingGET(safeguardId: number, reqId?: string, token?: string, observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<ApiResponseObjectstring>>;
    safeguardRuleRunNowUsingGET(safeguardId: number, reqId?: string, token?: string, observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<ApiResponseObjectstring>>;
    /**
     * API to update safeguard exclusion list for a campaign
     *
     * @param campaignId campaignId
     * @param safeguardExclusionDTO safeguardExclusionDTO
     * @param reqId request id
     * @param token Auth Token
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    updateSafeguardExclusionListUsingPOST(campaignId: number, safeguardExclusionDTO: SafeguardExclusionDTO, reqId?: string, token?: string, observe?: 'body', reportProgress?: boolean): Observable<ApiResponseObjectSafeguardExclusionDTO>;
    updateSafeguardExclusionListUsingPOST(campaignId: number, safeguardExclusionDTO: SafeguardExclusionDTO, reqId?: string, token?: string, observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<ApiResponseObjectSafeguardExclusionDTO>>;
    updateSafeguardExclusionListUsingPOST(campaignId: number, safeguardExclusionDTO: SafeguardExclusionDTO, reqId?: string, token?: string, observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<ApiResponseObjectSafeguardExclusionDTO>>;
    /**
     * API to update safeguard rules status
     *
     * @param ids ids
     * @param status status
     * @param reqId request id
     * @param token Auth Token
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    updateSafeguardRuleStatusUsingGET(ids: string, status: 'ACTIVE' | 'INACTIVE', reqId?: string, token?: string, observe?: 'body', reportProgress?: boolean): Observable<ApiResponseObjectMaplongstring>;
    updateSafeguardRuleStatusUsingGET(ids: string, status: 'ACTIVE' | 'INACTIVE', reqId?: string, token?: string, observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<ApiResponseObjectMaplongstring>>;
    updateSafeguardRuleStatusUsingGET(ids: string, status: 'ACTIVE' | 'INACTIVE', reqId?: string, token?: string, observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<ApiResponseObjectMaplongstring>>;
    /**
     * API to update safeguard rules
     *
     * @param safeguardId safeguardId
     * @param safeguardRequestDTO safeguardRequestDTO
     * @param reqId request id
     * @param token Auth Token
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    updateSafeguardRuleUsingPOST(safeguardId: number, safeguardRequestDTO: SafeguardRequestDTO, reqId?: string, token?: string, observe?: 'body', reportProgress?: boolean): Observable<ApiResponseObjectSafeguardResponseDTO>;
    updateSafeguardRuleUsingPOST(safeguardId: number, safeguardRequestDTO: SafeguardRequestDTO, reqId?: string, token?: string, observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<ApiResponseObjectSafeguardResponseDTO>>;
    updateSafeguardRuleUsingPOST(safeguardId: number, safeguardRequestDTO: SafeguardRequestDTO, reqId?: string, token?: string, observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<ApiResponseObjectSafeguardResponseDTO>>;
    /**
     * API to validate safeguard rules before saving
     *
     * @param safeguardRequestDTO safeguardRequestDTO
     * @param reqId request id
     * @param token Auth Token
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    validateSafeguardRuleUsingPOST(safeguardRequestDTO: SafeguardRequestDTO, reqId?: string, token?: string, observe?: 'body', reportProgress?: boolean): Observable<ApiResponseObjectListMapstringobject>;
    validateSafeguardRuleUsingPOST(safeguardRequestDTO: SafeguardRequestDTO, reqId?: string, token?: string, observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<ApiResponseObjectListMapstringobject>>;
    validateSafeguardRuleUsingPOST(safeguardRequestDTO: SafeguardRequestDTO, reqId?: string, token?: string, observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<ApiResponseObjectListMapstringobject>>;
    static ɵfac: i0.ɵɵFactoryDeclaration<SafeguardControllerService, [null, { optional: true; }, { optional: true; }]>;
    static ɵprov: i0.ɵɵInjectableDeclaration<SafeguardControllerService>;
}
