import { Configuration } from '../configuration';
import { Observable } from '../rxjsStub';
import { ApiKeyTokensListResponse } from '../models/ApiKeyTokensListResponse';
import { App } from '../models/App';
import { CopyTemplateRequest } from '../models/CopyTemplateRequest';
import { CreateApiKeyRequest } from '../models/CreateApiKeyRequest';
import { CreateApiKeyResponse } from '../models/CreateApiKeyResponse';
import { CreateNotificationSuccessResponse } from '../models/CreateNotificationSuccessResponse';
import { CreateSegmentSuccessResponse } from '../models/CreateSegmentSuccessResponse';
import { CreateTemplateRequest } from '../models/CreateTemplateRequest';
import { CustomEventsRequest } from '../models/CustomEventsRequest';
import { ExportEventsSuccessResponse } from '../models/ExportEventsSuccessResponse';
import { ExportSubscriptionsRequestBody } from '../models/ExportSubscriptionsRequestBody';
import { ExportSubscriptionsSuccessResponse } from '../models/ExportSubscriptionsSuccessResponse';
import { GenericSuccessBoolResponse } from '../models/GenericSuccessBoolResponse';
import { GetNotificationHistoryRequestBody } from '../models/GetNotificationHistoryRequestBody';
import { GetSegmentSuccessResponse } from '../models/GetSegmentSuccessResponse';
import { GetSegmentsSuccessResponse } from '../models/GetSegmentsSuccessResponse';
import { ListAuditLogsSuccessResponse } from '../models/ListAuditLogsSuccessResponse';
import { Notification } from '../models/Notification';
import { NotificationHistorySuccessResponse } from '../models/NotificationHistorySuccessResponse';
import { NotificationSlice } from '../models/NotificationSlice';
import { NotificationWithMeta } from '../models/NotificationWithMeta';
import { OutcomesData } from '../models/OutcomesData';
import { PropertiesBody } from '../models/PropertiesBody';
import { Segment } from '../models/Segment';
import { StartLiveActivityRequest } from '../models/StartLiveActivityRequest';
import { StartLiveActivitySuccessResponse } from '../models/StartLiveActivitySuccessResponse';
import { SubscriptionBody } from '../models/SubscriptionBody';
import { TemplateResource } from '../models/TemplateResource';
import { TemplatesListResponse } from '../models/TemplatesListResponse';
import { TransferSubscriptionRequestBody } from '../models/TransferSubscriptionRequestBody';
import { UpdateApiKeyRequest } from '../models/UpdateApiKeyRequest';
import { UpdateLiveActivityRequest } from '../models/UpdateLiveActivityRequest';
import { UpdateLiveActivitySuccessResponse } from '../models/UpdateLiveActivitySuccessResponse';
import { UpdateSegmentRequest } from '../models/UpdateSegmentRequest';
import { UpdateSegmentSuccessResponse } from '../models/UpdateSegmentSuccessResponse';
import { UpdateTemplateRequest } from '../models/UpdateTemplateRequest';
import { UpdateUserRequest } from '../models/UpdateUserRequest';
import { User } from '../models/User';
import { UserIdentityBody } from '../models/UserIdentityBody';
import { DefaultApiRequestFactory, DefaultApiResponseProcessor } from "../apis/DefaultApi";
export declare class ObservableDefaultApi {
    private requestFactory;
    private responseProcessor;
    private configuration;
    constructor(configuration: Configuration, requestFactory?: DefaultApiRequestFactory, responseProcessor?: DefaultApiResponseProcessor);
    cancelNotification(appId: string, notificationId: string, _options?: Configuration): Observable<GenericSuccessBoolResponse>;
    copyTemplateToApp(templateId: string, appId: string, copyTemplateRequest: CopyTemplateRequest, _options?: Configuration): Observable<TemplateResource>;
    createAlias(appId: string, aliasLabel: string, aliasId: string, userIdentityBody: UserIdentityBody, _options?: Configuration): Observable<UserIdentityBody>;
    createAliasBySubscription(appId: string, subscriptionId: string, userIdentityBody: UserIdentityBody, _options?: Configuration): Observable<UserIdentityBody>;
    createApiKey(appId: string, createApiKeyRequest: CreateApiKeyRequest, _options?: Configuration): Observable<CreateApiKeyResponse>;
    createApp(app: App, _options?: Configuration): Observable<App>;
    createCustomEvents(appId: string, customEventsRequest: CustomEventsRequest, _options?: Configuration): Observable<object>;
    createNotification(notification: Notification, _options?: Configuration): Observable<CreateNotificationSuccessResponse>;
    createSegment(appId: string, segment?: Segment, _options?: Configuration): Observable<CreateSegmentSuccessResponse>;
    createSubscription(appId: string, aliasLabel: string, aliasId: string, subscriptionBody: SubscriptionBody, _options?: Configuration): Observable<SubscriptionBody>;
    createTemplate(createTemplateRequest: CreateTemplateRequest, _options?: Configuration): Observable<TemplateResource>;
    createUser(appId: string, user: User, _options?: Configuration): Observable<User>;
    deleteAlias(appId: string, aliasLabel: string, aliasId: string, aliasLabelToDelete: string, _options?: Configuration): Observable<UserIdentityBody>;
    deleteApiKey(appId: string, tokenId: string, _options?: Configuration): Observable<object>;
    deleteSegment(appId: string, segmentId: string, _options?: Configuration): Observable<GenericSuccessBoolResponse>;
    deleteSubscription(appId: string, subscriptionId: string, _options?: Configuration): Observable<void>;
    deleteTemplate(templateId: string, appId: string, _options?: Configuration): Observable<GenericSuccessBoolResponse>;
    deleteUser(appId: string, aliasLabel: string, aliasId: string, _options?: Configuration): Observable<void>;
    exportEvents(notificationId: string, appId: string, _options?: Configuration): Observable<ExportEventsSuccessResponse>;
    exportSubscriptions(appId: string, exportSubscriptionsRequestBody?: ExportSubscriptionsRequestBody, _options?: Configuration): Observable<ExportSubscriptionsSuccessResponse>;
    getAliases(appId: string, aliasLabel: string, aliasId: string, _options?: Configuration): Observable<UserIdentityBody>;
    getAliasesBySubscription(appId: string, subscriptionId: string, _options?: Configuration): Observable<UserIdentityBody>;
    getApp(appId: string, _options?: Configuration): Observable<App>;
    getApps(_options?: Configuration): Observable<Array<App>>;
    getNotification(appId: string, notificationId: string, _options?: Configuration): Observable<NotificationWithMeta>;
    getNotificationHistory(notificationId: string, getNotificationHistoryRequestBody: GetNotificationHistoryRequestBody, _options?: Configuration): Observable<NotificationHistorySuccessResponse>;
    getNotifications(appId: string, limit?: number, offset?: number, kind?: 0 | 1 | 3, timeOffset?: string, _options?: Configuration): Observable<NotificationSlice>;
    getOutcomes(appId: string, outcomeNames: string, outcomeNames2?: string, outcomeTimeRange?: string, outcomePlatforms?: string, outcomeAttribution?: string, _options?: Configuration): Observable<OutcomesData>;
    getSegment(appId: string, segmentId: string, includeSegmentDetail?: boolean, _options?: Configuration): Observable<GetSegmentSuccessResponse>;
    getSegments(appId: string, offset?: number, limit?: number, _options?: Configuration): Observable<GetSegmentsSuccessResponse>;
    getUser(appId: string, aliasLabel: string, aliasId: string, _options?: Configuration): Observable<User>;
    listAuditLogs(organizationId: string, startTime?: string, endTime?: string, cursor?: string, limit?: number, appIds?: Array<string>, actions?: Array<string>, actorIds?: Array<string>, actorEmails?: Array<string>, targetTypes?: Array<string>, targetIds?: Array<string>, ipAddresses?: Array<string>, _options?: Configuration): Observable<ListAuditLogsSuccessResponse>;
    rotateApiKey(appId: string, tokenId: string, _options?: Configuration): Observable<CreateApiKeyResponse>;
    startLiveActivity(appId: string, activityType: string, startLiveActivityRequest: StartLiveActivityRequest, _options?: Configuration): Observable<StartLiveActivitySuccessResponse>;
    transferSubscription(appId: string, subscriptionId: string, transferSubscriptionRequestBody: TransferSubscriptionRequestBody, _options?: Configuration): Observable<UserIdentityBody>;
    unsubscribeEmailWithToken(appId: string, notificationId: string, token: string, _options?: Configuration): Observable<GenericSuccessBoolResponse>;
    updateApiKey(appId: string, tokenId: string, updateApiKeyRequest: UpdateApiKeyRequest, _options?: Configuration): Observable<object>;
    updateApp(appId: string, app: App, _options?: Configuration): Observable<App>;
    updateLiveActivity(appId: string, activityId: string, updateLiveActivityRequest: UpdateLiveActivityRequest, _options?: Configuration): Observable<UpdateLiveActivitySuccessResponse>;
    updateSegment(appId: string, segmentId: string, updateSegmentRequest?: UpdateSegmentRequest, _options?: Configuration): Observable<UpdateSegmentSuccessResponse>;
    updateSubscription(appId: string, subscriptionId: string, subscriptionBody: SubscriptionBody, _options?: Configuration): Observable<void>;
    updateSubscriptionByToken(appId: string, tokenType: string, token: string, subscriptionBody: SubscriptionBody, _options?: Configuration): Observable<object>;
    updateTemplate(templateId: string, appId: string, updateTemplateRequest: UpdateTemplateRequest, _options?: Configuration): Observable<TemplateResource>;
    updateUser(appId: string, aliasLabel: string, aliasId: string, updateUserRequest: UpdateUserRequest, _options?: Configuration): Observable<PropertiesBody>;
    viewApiKeys(appId: string, _options?: Configuration): Observable<ApiKeyTokensListResponse>;
    viewTemplate(templateId: string, appId: string, _options?: Configuration): Observable<TemplateResource>;
    viewTemplates(appId: string, limit?: number, offset?: number, channel?: 'push' | 'email' | 'sms', _options?: Configuration): Observable<TemplatesListResponse>;
}
