/**
 * 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 { PaginatedTeams } from "../models";
import { Team } from "../models";
import { TeamStats } from "../models";
/**
 * TeamApi - axios parameter creator
 * @export
 */
export declare const TeamApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     *
     * @summary 所属するチームを取得する
     * @param {string} teamName チーム名
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getTeam: (teamName: string, options?: any) => Promise<RequestArgs>;
    /**
     *
     * @summary チームの統計情報を取得する
     * @param {string} teamName チーム名
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getTeamStats: (teamName: string, options?: any) => Promise<RequestArgs>;
    /**
     *
     * @summary 所属するチーム一覧を取得する
     * @param {number} [page] ページ番号
     * @param {number} [perPage] 1ページあたりに含まれる要素数
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getTeams: (page?: number, perPage?: number, options?: any) => Promise<RequestArgs>;
};
/**
 * TeamApi - functional programming interface
 * @export
 */
export declare const TeamApiFp: (configuration?: Configuration) => {
    /**
     *
     * @summary 所属するチームを取得する
     * @param {string} teamName チーム名
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getTeam(teamName: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Team>>;
    /**
     *
     * @summary チームの統計情報を取得する
     * @param {string} teamName チーム名
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getTeamStats(teamName: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<TeamStats>>;
    /**
     *
     * @summary 所属するチーム一覧を取得する
     * @param {number} [page] ページ番号
     * @param {number} [perPage] 1ページあたりに含まれる要素数
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getTeams(page?: number, perPage?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PaginatedTeams>>;
};
/**
 * TeamApi - factory interface
 * @export
 */
export declare const TeamApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     *
     * @summary 所属するチームを取得する
     * @param {string} teamName チーム名
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getTeam(teamName: string, options?: any): AxiosPromise<Team>;
    /**
     *
     * @summary チームの統計情報を取得する
     * @param {string} teamName チーム名
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getTeamStats(teamName: string, options?: any): AxiosPromise<TeamStats>;
    /**
     *
     * @summary 所属するチーム一覧を取得する
     * @param {number} [page] ページ番号
     * @param {number} [perPage] 1ページあたりに含まれる要素数
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getTeams(page?: number, perPage?: number, options?: any): AxiosPromise<PaginatedTeams>;
};
/**
 * Request parameters for getTeam operation in TeamApi.
 * @export
 * @interface TeamApiGetTeamRequest
 */
export interface TeamApiGetTeamRequest {
    /**
     * チーム名
     * @type {string}
     * @memberof TeamApiGetTeam
     */
    readonly teamName: string;
}
/**
 * Request parameters for getTeamStats operation in TeamApi.
 * @export
 * @interface TeamApiGetTeamStatsRequest
 */
export interface TeamApiGetTeamStatsRequest {
    /**
     * チーム名
     * @type {string}
     * @memberof TeamApiGetTeamStats
     */
    readonly teamName: string;
}
/**
 * Request parameters for getTeams operation in TeamApi.
 * @export
 * @interface TeamApiGetTeamsRequest
 */
export interface TeamApiGetTeamsRequest {
    /**
     * ページ番号
     * @type {number}
     * @memberof TeamApiGetTeams
     */
    readonly page?: number;
    /**
     * 1ページあたりに含まれる要素数
     * @type {number}
     * @memberof TeamApiGetTeams
     */
    readonly perPage?: number;
}
/**
 * TeamApi - object-oriented interface
 * @export
 * @class TeamApi
 * @extends {BaseAPI}
 */
export declare class TeamApi extends BaseAPI {
    /**
     *
     * @summary 所属するチームを取得する
     * @param {TeamApiGetTeamRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof TeamApi
     */
    getTeam(requestParameters: TeamApiGetTeamRequest, options?: any): Promise<import("axios").AxiosResponse<Team, any>>;
    /**
     *
     * @summary チームの統計情報を取得する
     * @param {TeamApiGetTeamStatsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof TeamApi
     */
    getTeamStats(requestParameters: TeamApiGetTeamStatsRequest, options?: any): Promise<import("axios").AxiosResponse<TeamStats, any>>;
    /**
     *
     * @summary 所属するチーム一覧を取得する
     * @param {TeamApiGetTeamsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof TeamApi
     */
    getTeams(requestParameters?: TeamApiGetTeamsRequest, options?: any): Promise<import("axios").AxiosResponse<PaginatedTeams, any>>;
}
//# sourceMappingURL=team-api.d.ts.map