import { CreateEventStreamBody, EventStream, ListEventStreams, SetEventStreamBody } from '../models/index';
/**
 * Ory APIs
 * # Introduction Documentation for all public and administrative Ory APIs. Administrative APIs can only be accessed with a valid Personal Access Token. Public APIs are mostly used in browsers.  ## SDKs This document describes the APIs available in the Ory Network. The APIs are available as SDKs for the following languages:  | Language       | Download SDK                                                     | Documentation                                                                        | | -------------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------ | | Dart           | [pub.dev](https://pub.dev/packages/ory_client)                   | [README](https://github.com/ory/sdk/blob/master/clients/client/dart/README.md)       | | .NET           | [nuget.org](https://www.nuget.org/packages/Ory.Client/)          | [README](https://github.com/ory/sdk/blob/master/clients/client/dotnet/README.md)     | | Elixir         | [hex.pm](https://hex.pm/packages/ory_client)                     | [README](https://github.com/ory/sdk/blob/master/clients/client/elixir/README.md)     | | Go             | [github.com](https://github.com/ory/client-go)                   | [README](https://github.com/ory/sdk/blob/master/clients/client/go/README.md)         | | Java           | [maven.org](https://search.maven.org/artifact/sh.ory/ory-client) | [README](https://github.com/ory/sdk/blob/master/clients/client/java/README.md)       | | JavaScript     | [npmjs.com](https://www.npmjs.com/package/@ory/client)           | [README](https://github.com/ory/sdk/blob/master/clients/client/typescript/README.md) | | JavaScript (With fetch) | [npmjs.com](https://www.npmjs.com/package/@ory/client-fetch)           | [README](https://github.com/ory/sdk/blob/master/clients/client/typescript-fetch/README.md) |  | PHP            | [packagist.org](https://packagist.org/packages/ory/client)       | [README](https://github.com/ory/sdk/blob/master/clients/client/php/README.md)        | | Python         | [pypi.org](https://pypi.org/project/ory-client/)                 | [README](https://github.com/ory/sdk/blob/master/clients/client/python/README.md)     | | Ruby           | [rubygems.org](https://rubygems.org/gems/ory-client)             | [README](https://github.com/ory/sdk/blob/master/clients/client/ruby/README.md)       | | Rust           | [crates.io](https://crates.io/crates/ory-client)                 | [README](https://github.com/ory/sdk/blob/master/clients/client/rust/README.md)       |
 *
 * The version of the OpenAPI document: v1.20.10
 * Contact: support@ory.sh
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import * as runtime from '../runtime';
export interface CreateEventStreamRequest {
    projectId: string;
    createEventStreamBody: CreateEventStreamBody;
}
export interface DeleteEventStreamRequest {
    projectId: string;
    eventStreamId: string;
}
export interface ListEventStreamsRequest {
    projectId: string;
}
export interface SetEventStreamRequest {
    projectId: string;
    eventStreamId: string;
    setEventStreamBody?: SetEventStreamBody;
}
/**
 * EventsApi - interface
 *
 * @export
 * @interface EventsApiInterface
 */
export interface EventsApiInterface {
    /**
     *
     * @summary Create an event stream for your project.
     * @param {string} projectId Project ID  The project\&#39;s ID.
     * @param {CreateEventStreamBody} createEventStreamBody
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EventsApiInterface
     */
    createEventStreamRaw(requestParameters: CreateEventStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<EventStream>>;
    /**
     * Create an event stream for your project.
     */
    createEventStream(requestParameters: CreateEventStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<EventStream>;
    /**
     * Remove an event stream from a project.
     * @summary Remove an event stream from a project
     * @param {string} projectId Project ID  The project\&#39;s ID.
     * @param {string} eventStreamId Event Stream ID  The ID of the event stream to be deleted, as returned when created.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EventsApiInterface
     */
    deleteEventStreamRaw(requestParameters: DeleteEventStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
    /**
     * Remove an event stream from a project.
     * Remove an event stream from a project
     */
    deleteEventStream(requestParameters: DeleteEventStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
    /**
     *
     * @summary List all event streams for the project. This endpoint is not paginated.
     * @param {string} projectId Project ID  The project\&#39;s ID.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EventsApiInterface
     */
    listEventStreamsRaw(requestParameters: ListEventStreamsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ListEventStreams>>;
    /**
     * List all event streams for the project. This endpoint is not paginated.
     */
    listEventStreams(requestParameters: ListEventStreamsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ListEventStreams>;
    /**
     *
     * @summary Update an event stream for a project.
     * @param {string} projectId Project ID  The project\&#39;s ID.
     * @param {string} eventStreamId Event Stream ID  The event stream\&#39;s ID.
     * @param {SetEventStreamBody} [setEventStreamBody]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EventsApiInterface
     */
    setEventStreamRaw(requestParameters: SetEventStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<EventStream>>;
    /**
     * Update an event stream for a project.
     */
    setEventStream(requestParameters: SetEventStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<EventStream>;
}
/**
 *
 */
export declare class EventsApi extends runtime.BaseAPI implements EventsApiInterface {
    /**
     * Create an event stream for your project.
     */
    createEventStreamRaw(requestParameters: CreateEventStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<EventStream>>;
    /**
     * Create an event stream for your project.
     */
    createEventStream(requestParameters: CreateEventStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<EventStream>;
    /**
     * Remove an event stream from a project.
     * Remove an event stream from a project
     */
    deleteEventStreamRaw(requestParameters: DeleteEventStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
    /**
     * Remove an event stream from a project.
     * Remove an event stream from a project
     */
    deleteEventStream(requestParameters: DeleteEventStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
    /**
     * List all event streams for the project. This endpoint is not paginated.
     */
    listEventStreamsRaw(requestParameters: ListEventStreamsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ListEventStreams>>;
    /**
     * List all event streams for the project. This endpoint is not paginated.
     */
    listEventStreams(requestParameters: ListEventStreamsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ListEventStreams>;
    /**
     * Update an event stream for a project.
     */
    setEventStreamRaw(requestParameters: SetEventStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<EventStream>>;
    /**
     * Update an event stream for a project.
     */
    setEventStream(requestParameters: SetEventStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<EventStream>;
}
//# sourceMappingURL=EventsApi.d.ts.map