/**
 * esa API v1
 * チームのナレッジ共有サービス[esa.io](https://esa.io/)のAPI v1の仕様書
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import { AxiosPromise, AxiosInstance } from "axios";
import { Configuration } from "../configuration";
import { RequestArgs, BaseAPI } from "../base";
import { CreateEmojiBody } from "../models";
import { CreatedEmoji } from "../models";
import { EmojiList } from "../models";
/**
 * EmojiApi - axios parameter creator
 * @export
 */
export declare const EmojiApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     * 新しい絵文字を登録します。
     * @summary 絵文字を登録する
     * @param {string} teamName チーム名
     * @param {CreateEmojiBody} createEmojiBody
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createEmoji: (teamName: string, createEmojiBody: CreateEmojiBody, options?: any) => Promise<RequestArgs>;
    /**
     * 登録したチーム固有の絵文字を削除します。
     * @summary 絵文字を削除する
     * @param {string} teamName チーム名
     * @param {string} code 絵文字コード
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteEmoji: (teamName: string, code: string, options?: any) => Promise<RequestArgs>;
    /**
     * チームで利用可能な絵文字を取得します。URIクエリ文字列を含めない場合、チーム固有の絵文字だけを取得します。
     * @summary 絵文字一覧を取得する
     * @param {string} teamName チーム名
     * @param {'all'} [include] &#x60;all&#x60;を指定すると、チーム固有の絵文字だけではなく、すべての絵文字を返します。
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEmojis: (teamName: string, include?: "all", options?: any) => Promise<RequestArgs>;
};
/**
 * EmojiApi - functional programming interface
 * @export
 */
export declare const EmojiApiFp: (configuration?: Configuration) => {
    /**
     * 新しい絵文字を登録します。
     * @summary 絵文字を登録する
     * @param {string} teamName チーム名
     * @param {CreateEmojiBody} createEmojiBody
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createEmoji(teamName: string, createEmojiBody: CreateEmojiBody, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CreatedEmoji>>;
    /**
     * 登録したチーム固有の絵文字を削除します。
     * @summary 絵文字を削除する
     * @param {string} teamName チーム名
     * @param {string} code 絵文字コード
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteEmoji(teamName: string, code: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * チームで利用可能な絵文字を取得します。URIクエリ文字列を含めない場合、チーム固有の絵文字だけを取得します。
     * @summary 絵文字一覧を取得する
     * @param {string} teamName チーム名
     * @param {'all'} [include] &#x60;all&#x60;を指定すると、チーム固有の絵文字だけではなく、すべての絵文字を返します。
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEmojis(teamName: string, include?: "all", options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<EmojiList>>;
};
/**
 * EmojiApi - factory interface
 * @export
 */
export declare const EmojiApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     * 新しい絵文字を登録します。
     * @summary 絵文字を登録する
     * @param {string} teamName チーム名
     * @param {CreateEmojiBody} createEmojiBody
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createEmoji(teamName: string, createEmojiBody: CreateEmojiBody, options?: any): AxiosPromise<CreatedEmoji>;
    /**
     * 登録したチーム固有の絵文字を削除します。
     * @summary 絵文字を削除する
     * @param {string} teamName チーム名
     * @param {string} code 絵文字コード
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteEmoji(teamName: string, code: string, options?: any): AxiosPromise<void>;
    /**
     * チームで利用可能な絵文字を取得します。URIクエリ文字列を含めない場合、チーム固有の絵文字だけを取得します。
     * @summary 絵文字一覧を取得する
     * @param {string} teamName チーム名
     * @param {'all'} [include] &#x60;all&#x60;を指定すると、チーム固有の絵文字だけではなく、すべての絵文字を返します。
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEmojis(teamName: string, include?: "all", options?: any): AxiosPromise<EmojiList>;
};
/**
 * Request parameters for createEmoji operation in EmojiApi.
 * @export
 * @interface EmojiApiCreateEmojiRequest
 */
export interface EmojiApiCreateEmojiRequest {
    /**
     * チーム名
     * @type {string}
     * @memberof EmojiApiCreateEmoji
     */
    readonly teamName: string;
    /**
     *
     * @type {CreateEmojiBody}
     * @memberof EmojiApiCreateEmoji
     */
    readonly createEmojiBody: CreateEmojiBody;
}
/**
 * Request parameters for deleteEmoji operation in EmojiApi.
 * @export
 * @interface EmojiApiDeleteEmojiRequest
 */
export interface EmojiApiDeleteEmojiRequest {
    /**
     * チーム名
     * @type {string}
     * @memberof EmojiApiDeleteEmoji
     */
    readonly teamName: string;
    /**
     * 絵文字コード
     * @type {string}
     * @memberof EmojiApiDeleteEmoji
     */
    readonly code: string;
}
/**
 * Request parameters for getEmojis operation in EmojiApi.
 * @export
 * @interface EmojiApiGetEmojisRequest
 */
export interface EmojiApiGetEmojisRequest {
    /**
     * チーム名
     * @type {string}
     * @memberof EmojiApiGetEmojis
     */
    readonly teamName: string;
    /**
     * &#x60;all&#x60;を指定すると、チーム固有の絵文字だけではなく、すべての絵文字を返します。
     * @type {'all'}
     * @memberof EmojiApiGetEmojis
     */
    readonly include?: "all";
}
/**
 * EmojiApi - object-oriented interface
 * @export
 * @class EmojiApi
 * @extends {BaseAPI}
 */
export declare class EmojiApi extends BaseAPI {
    /**
     * 新しい絵文字を登録します。
     * @summary 絵文字を登録する
     * @param {EmojiApiCreateEmojiRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EmojiApi
     */
    createEmoji(requestParameters: EmojiApiCreateEmojiRequest, options?: any): Promise<import("axios").AxiosResponse<CreatedEmoji, any>>;
    /**
     * 登録したチーム固有の絵文字を削除します。
     * @summary 絵文字を削除する
     * @param {EmojiApiDeleteEmojiRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EmojiApi
     */
    deleteEmoji(requestParameters: EmojiApiDeleteEmojiRequest, options?: any): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * チームで利用可能な絵文字を取得します。URIクエリ文字列を含めない場合、チーム固有の絵文字だけを取得します。
     * @summary 絵文字一覧を取得する
     * @param {EmojiApiGetEmojisRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EmojiApi
     */
    getEmojis(requestParameters: EmojiApiGetEmojisRequest, options?: any): Promise<import("axios").AxiosResponse<EmojiList, any>>;
}
//# sourceMappingURL=emoji-api.d.ts.map