import { IConnection } from "@nestia/fetcher";
import typia from "typia";
import { IApiOrgsCopilotBillingSelectedTeams } from "../../../../../structures/IApiOrgsCopilotBillingSelectedTeams";
import { body } from "../../../../../structures/body";
import { response } from "../../../../../structures/response";
/**
 * Add teams to the Copilot subscription for an organization.
 * > [!NOTE]
 * > This endpoint is in beta and is subject to change.
 *
 * Purchases a GitHub Copilot seat for all users within each specified team.
 * The organization will be billed accordingly. For more information about Copilot pricing, see "[Pricing for GitHub Copilot](https://docs.github.com/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot#about-billing-for-github-copilot)".
 *
 * Only organization owners can add Copilot seats for their organization members.
 *
 * In order for an admin to use this endpoint, the organization must have a Copilot Business or Enterprise subscription and a configured suggestion matching policy.
 * For more information about setting up a Copilot subscription, see "[Setting up a Copilot subscription for your organization](https://docs.github.com/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription-for-your-organization-or-enterprise)".
 * For more information about setting a suggestion matching policy, see "[Configuring suggestion matching policies for GitHub Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-github-copilot-in-your-organization#configuring-suggestion-matching-policies-for-github-copilot-in-your-organization)".
 *
 * The response will contain the total number of new seats that were created and existing seats that were refreshed.
 *
 * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
 *
 * @tag copilot
 * @path orgs/:org/copilot/billing/selected_teams
 * @nestia Generated by Nestia - https://github.com/samchon/nestia
 */
export declare function postByOrg(connection: IConnection<postByOrg.Headers>, org: string, body: postByOrg.Input): Promise<postByOrg.Output>;
export declare namespace postByOrg {
    type Headers = IApiOrgsCopilotBillingSelectedTeams.PostHeader;
    type Input = body;
    type Output = response;
    const METADATA: {
        readonly method: "POST";
        readonly path: "/orgs/:org/copilot/billing/selected_teams";
        readonly request: {
            readonly type: "application/json";
            readonly encrypted: false;
        };
        readonly response: {
            readonly type: "application/json";
            readonly encrypted: false;
        };
    };
    const path: (org: string) => string;
    const random: (g?: Partial<typia.IRandomGenerator>) => response;
    const simulate: (connection: IConnection<postByOrg.Headers>, org: string, body: postByOrg.Input) => Output;
}
/**
 * Remove teams from the Copilot subscription for an organization.
 * > [!NOTE]
 * > This endpoint is in beta and is subject to change.
 *
 * Cancels the Copilot seat assignment for all members of each team specified.
 * This will cause the members of the specified team(s) to lose access to GitHub Copilot at the end of the current billing cycle, and the organization will not be billed further for those users.
 *
 * For more information about Copilot pricing, see "[Pricing for GitHub Copilot](https://docs.github.com/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot#about-billing-for-github-copilot)".
 *
 * For more information about disabling access to Copilot Business or Enterprise, see "[Revoking access to GitHub Copilot for specific users in your organization](https://docs.github.com/copilot/managing-copilot/managing-access-for-copilot-in-your-organization#revoking-access-to-github-copilot-for-specific-users-in-your-organization)".
 *
 * Only organization owners can cancel Copilot seats for their organization members.
 *
 * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
 *
 * @tag copilot
 * @path orgs/:org/copilot/billing/selected_teams
 * @nestia Generated by Nestia - https://github.com/samchon/nestia
 */
export declare function eraseByOrg(connection: IConnection<eraseByOrg.Headers>, org: string, body: eraseByOrg.Input): Promise<eraseByOrg.Output>;
export declare namespace eraseByOrg {
    type Headers = IApiOrgsCopilotBillingSelectedTeams.DeleteHeader;
    type Input = body;
    type Output = response;
    const METADATA: {
        readonly method: "DELETE";
        readonly path: "/orgs/:org/copilot/billing/selected_teams";
        readonly request: {
            readonly type: "application/json";
            readonly encrypted: false;
        };
        readonly response: {
            readonly type: "application/json";
            readonly encrypted: false;
        };
    };
    const path: (org: string) => string;
    const random: (g?: Partial<typia.IRandomGenerator>) => response;
    const simulate: (connection: IConnection<eraseByOrg.Headers>, org: string, body: eraseByOrg.Input) => Output;
}
