import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * This resource manages the team settings (in particular the request review delegation settings) within the organization * * Creating this resource will alter the team Code Review settings. * * The team must both belong to the same organization configured in the provider on GitHub. * * > **Note**: This resource relies on the v4 GraphQl GitHub API. If this API is not available, or the Stone Crop schema preview is not available, then this resource will not work as intended. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as github from "@pulumi/github"; * * // Add a repository to the team * const someTeam = new github.Team("some_team", { * name: "SomeTeam", * description: "Some cool team", * }); * const codeReviewSettings = new github.TeamSettings("code_review_settings", { * teamId: someTeam.id, * reviewRequestDelegation: { * algorithm: "ROUND_ROBIN", * memberCount: 1, * notify: true, * }, * }); * ``` * * ## Import * * GitHub Teams can be imported using the GitHub team ID, or the team slug e.g. * * ```sh * $ pulumi import github:index/teamSettings:TeamSettings code_review_settings 1234567 * ``` * or, * * ```sh * $ pulumi import github:index/teamSettings:TeamSettings code_review_settings SomeTeam * ``` */ export declare class TeamSettings extends pulumi.CustomResource { /** * Get an existing TeamSettings resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: TeamSettingsState, opts?: pulumi.CustomResourceOptions): TeamSettings; /** * Returns true if the given object is an instance of TeamSettings. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is TeamSettings; /** * The settings for delegating code reviews to individuals on behalf of the team. If this block is present, even without any fields, then review request delegation will be enabled for the team. See GitHub Review Request Delegation below for details. See [GitHub's documentation](https://docs.github.com/en/organizations/organizing-members-into-teams/managing-code-review-settings-for-your-team#configuring-team-notifications) for more configuration details. */ readonly reviewRequestDelegation: pulumi.Output; /** * The GitHub team id or the GitHub team slug */ readonly teamId: pulumi.Output; /** * The slug of the Team within the Organization. */ readonly teamSlug: pulumi.Output; /** * The unique ID of the Team on GitHub. Corresponds to the ID of the 'github_team_settings' resource. */ readonly teamUid: pulumi.Output; /** * Create a TeamSettings resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: TeamSettingsArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering TeamSettings resources. */ export interface TeamSettingsState { /** * The settings for delegating code reviews to individuals on behalf of the team. If this block is present, even without any fields, then review request delegation will be enabled for the team. See GitHub Review Request Delegation below for details. See [GitHub's documentation](https://docs.github.com/en/organizations/organizing-members-into-teams/managing-code-review-settings-for-your-team#configuring-team-notifications) for more configuration details. */ reviewRequestDelegation?: pulumi.Input; /** * The GitHub team id or the GitHub team slug */ teamId?: pulumi.Input; /** * The slug of the Team within the Organization. */ teamSlug?: pulumi.Input; /** * The unique ID of the Team on GitHub. Corresponds to the ID of the 'github_team_settings' resource. */ teamUid?: pulumi.Input; } /** * The set of arguments for constructing a TeamSettings resource. */ export interface TeamSettingsArgs { /** * The settings for delegating code reviews to individuals on behalf of the team. If this block is present, even without any fields, then review request delegation will be enabled for the team. See GitHub Review Request Delegation below for details. See [GitHub's documentation](https://docs.github.com/en/organizations/organizing-members-into-teams/managing-code-review-settings-for-your-team#configuring-team-notifications) for more configuration details. */ reviewRequestDelegation?: pulumi.Input; /** * The GitHub team id or the GitHub team slug */ teamId: pulumi.Input; }