import * as pulumi from "@pulumi/pulumi";
import * as outputs from "./types/output";
/**
 * Use this data source to retrieve information about a GitHub team.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as github from "@pulumi/github";
 *
 * const example = github.getTeam({
 *     slug: "example",
 * });
 * ```
 */
export declare function getTeam(args: GetTeamArgs, opts?: pulumi.InvokeOptions): Promise<GetTeamResult>;
/**
 * A collection of arguments for invoking getTeam.
 */
export interface GetTeamArgs {
    /**
     * Type of membership to be requested to fill the list of members. Can be either "all" or "immediate". Default: "all"
     */
    membershipType?: string;
    /**
     * Set the number of results per graphql query. Reducing this number can alleviate timeout errors. Accepts a value between 0 - 100. Defaults to `100`.
     */
    resultsPerPage?: number;
    /**
     * The team slug.
     */
    slug: string;
    /**
     * Exclude the members and repositories of the team from the returned result. Defaults to `false`.
     */
    summaryOnly?: boolean;
}
/**
 * A collection of values returned by getTeam.
 */
export interface GetTeamResult {
    /**
     * the team's description.
     */
    readonly description: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * List of team members (list of GitHub usernames). Not returned if `summaryOnly = true`
     */
    readonly members: string[];
    readonly membershipType?: string;
    /**
     * the team's full name.
     */
    readonly name: string;
    /**
     * the Node ID of the team.
     */
    readonly nodeId: string;
    /**
     * the team's permission level.
     */
    readonly permission: string;
    /**
     * the team's privacy type.
     */
    readonly privacy: string;
    /**
     * List of team repositories (list of repo names). Not returned if `summaryOnly = true`
     */
    readonly repositories: string[];
    /**
     * List of team repositories (list of `repoId` and `roleName`). Not returned if `summaryOnly = true`
     */
    readonly repositoriesDetaileds: outputs.GetTeamRepositoriesDetailed[];
    readonly resultsPerPage?: number;
    readonly slug: string;
    readonly summaryOnly?: boolean;
}
/**
 * Use this data source to retrieve information about a GitHub team.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as github from "@pulumi/github";
 *
 * const example = github.getTeam({
 *     slug: "example",
 * });
 * ```
 */
export declare function getTeamOutput(args: GetTeamOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetTeamResult>;
/**
 * A collection of arguments for invoking getTeam.
 */
export interface GetTeamOutputArgs {
    /**
     * Type of membership to be requested to fill the list of members. Can be either "all" or "immediate". Default: "all"
     */
    membershipType?: pulumi.Input<string>;
    /**
     * Set the number of results per graphql query. Reducing this number can alleviate timeout errors. Accepts a value between 0 - 100. Defaults to `100`.
     */
    resultsPerPage?: pulumi.Input<number>;
    /**
     * The team slug.
     */
    slug: pulumi.Input<string>;
    /**
     * Exclude the members and repositories of the team from the returned result. Defaults to `false`.
     */
    summaryOnly?: pulumi.Input<boolean>;
}