// Copyright 2021 Authors of Cilium
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

package github

import (
	"github.com/cilium/team-manager/pkg/config"

	"github.com/shurcooL/githubv4"
)

type UpdateTeamReviewAssignmentInput struct {
	Algorithm config.TeamReviewAssignmentAlgorithm `json:"algorithm,omitempty"`

	ClientMutationID githubv4.String `json:"clientMutationId,omitempty"`

	Enabled githubv4.Boolean `json:"enabled"`

	ExcludedTeamMemberIDs []githubv4.ID `json:"excludedTeamMemberIds,omitempty"`

	IncludeChildTeamMembers *githubv4.Boolean `json:"includeChildTeamMembers,omitempty"`

	ID githubv4.ID `json:"id"`

	NotifyTeam githubv4.Boolean `json:"notifyTeam"`

	TeamMemberCount githubv4.Int `json:"teamMemberCount"`
}
