repositoryruleset

package
v15.3.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 10, 2025 License: MPL-2.0 Imports: 7 Imported by: 0

README

github_repository_ruleset

Refer to the Terraform Registry for docs: github_repository_ruleset.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewRepositoryRulesetBypassActorsList_Override

func NewRepositoryRulesetBypassActorsList_Override(r RepositoryRulesetBypassActorsList, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool)

func NewRepositoryRulesetBypassActorsOutputReference_Override

func NewRepositoryRulesetBypassActorsOutputReference_Override(r RepositoryRulesetBypassActorsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool)

func NewRepositoryRulesetConditionsOutputReference_Override

func NewRepositoryRulesetConditionsOutputReference_Override(r RepositoryRulesetConditionsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewRepositoryRulesetConditionsRefNameOutputReference_Override

func NewRepositoryRulesetConditionsRefNameOutputReference_Override(r RepositoryRulesetConditionsRefNameOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewRepositoryRulesetRulesBranchNamePatternOutputReference_Override

func NewRepositoryRulesetRulesBranchNamePatternOutputReference_Override(r RepositoryRulesetRulesBranchNamePatternOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewRepositoryRulesetRulesCommitAuthorEmailPatternOutputReference_Override

func NewRepositoryRulesetRulesCommitAuthorEmailPatternOutputReference_Override(r RepositoryRulesetRulesCommitAuthorEmailPatternOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewRepositoryRulesetRulesCommitMessagePatternOutputReference_Override

func NewRepositoryRulesetRulesCommitMessagePatternOutputReference_Override(r RepositoryRulesetRulesCommitMessagePatternOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewRepositoryRulesetRulesCommitterEmailPatternOutputReference_Override

func NewRepositoryRulesetRulesCommitterEmailPatternOutputReference_Override(r RepositoryRulesetRulesCommitterEmailPatternOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewRepositoryRulesetRulesFileExtensionRestrictionOutputReference_Override added in v15.1.0

func NewRepositoryRulesetRulesFileExtensionRestrictionOutputReference_Override(r RepositoryRulesetRulesFileExtensionRestrictionOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewRepositoryRulesetRulesFilePathRestrictionOutputReference_Override added in v15.1.0

func NewRepositoryRulesetRulesFilePathRestrictionOutputReference_Override(r RepositoryRulesetRulesFilePathRestrictionOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewRepositoryRulesetRulesMaxFilePathLengthOutputReference_Override added in v15.2.0

func NewRepositoryRulesetRulesMaxFilePathLengthOutputReference_Override(r RepositoryRulesetRulesMaxFilePathLengthOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewRepositoryRulesetRulesMaxFileSizeOutputReference_Override added in v15.1.0

func NewRepositoryRulesetRulesMaxFileSizeOutputReference_Override(r RepositoryRulesetRulesMaxFileSizeOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewRepositoryRulesetRulesMergeQueueOutputReference_Override

func NewRepositoryRulesetRulesMergeQueueOutputReference_Override(r RepositoryRulesetRulesMergeQueueOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewRepositoryRulesetRulesOutputReference_Override

func NewRepositoryRulesetRulesOutputReference_Override(r RepositoryRulesetRulesOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewRepositoryRulesetRulesPullRequestOutputReference_Override

func NewRepositoryRulesetRulesPullRequestOutputReference_Override(r RepositoryRulesetRulesPullRequestOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewRepositoryRulesetRulesRequiredCodeScanningOutputReference_Override

func NewRepositoryRulesetRulesRequiredCodeScanningOutputReference_Override(r RepositoryRulesetRulesRequiredCodeScanningOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewRepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolList_Override

func NewRepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolList_Override(r RepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolList, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool)

func NewRepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolOutputReference_Override

func NewRepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolOutputReference_Override(r RepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool)

func NewRepositoryRulesetRulesRequiredDeploymentsOutputReference_Override

func NewRepositoryRulesetRulesRequiredDeploymentsOutputReference_Override(r RepositoryRulesetRulesRequiredDeploymentsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewRepositoryRulesetRulesRequiredStatusChecksOutputReference_Override

func NewRepositoryRulesetRulesRequiredStatusChecksOutputReference_Override(r RepositoryRulesetRulesRequiredStatusChecksOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewRepositoryRulesetRulesRequiredStatusChecksRequiredCheckList_Override

func NewRepositoryRulesetRulesRequiredStatusChecksRequiredCheckList_Override(r RepositoryRulesetRulesRequiredStatusChecksRequiredCheckList, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool)

func NewRepositoryRulesetRulesRequiredStatusChecksRequiredCheckOutputReference_Override

func NewRepositoryRulesetRulesRequiredStatusChecksRequiredCheckOutputReference_Override(r RepositoryRulesetRulesRequiredStatusChecksRequiredCheckOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool)

func NewRepositoryRulesetRulesTagNamePatternOutputReference_Override

func NewRepositoryRulesetRulesTagNamePatternOutputReference_Override(r RepositoryRulesetRulesTagNamePatternOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewRepositoryRuleset_Override

func NewRepositoryRuleset_Override(r RepositoryRuleset, scope constructs.Construct, id *string, config *RepositoryRulesetConfig)

Create a new {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset github_repository_ruleset} Resource.

func RepositoryRuleset_GenerateConfigForImport

func RepositoryRuleset_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, provider cdktf.TerraformProvider) cdktf.ImportableResource

Generates CDKTF code for importing a RepositoryRuleset resource upon running "cdktf plan <stack-name>".

func RepositoryRuleset_IsConstruct

func RepositoryRuleset_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.

Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.

Returns: true if `x` is an object created from a class which extends `Construct`.

func RepositoryRuleset_IsTerraformElement

func RepositoryRuleset_IsTerraformElement(x interface{}) *bool

Experimental.

func RepositoryRuleset_IsTerraformResource

func RepositoryRuleset_IsTerraformResource(x interface{}) *bool

Experimental.

func RepositoryRuleset_TfResourceType

func RepositoryRuleset_TfResourceType() *string

Types

type RepositoryRuleset

type RepositoryRuleset interface {
	cdktf.TerraformResource
	BypassActors() RepositoryRulesetBypassActorsList
	BypassActorsInput() interface{}
	// Experimental.
	CdktfStack() cdktf.TerraformStack
	Conditions() RepositoryRulesetConditionsOutputReference
	ConditionsInput() *RepositoryRulesetConditions
	// Experimental.
	Connection() interface{}
	// Experimental.
	SetConnection(val interface{})
	// Experimental.
	ConstructNodeMetadata() *map[string]interface{}
	// Experimental.
	Count() interface{}
	// Experimental.
	SetCount(val interface{})
	// Experimental.
	DependsOn() *[]*string
	// Experimental.
	SetDependsOn(val *[]*string)
	Enforcement() *string
	SetEnforcement(val *string)
	EnforcementInput() *string
	Etag() *string
	// Experimental.
	ForEach() cdktf.ITerraformIterator
	// Experimental.
	SetForEach(val cdktf.ITerraformIterator)
	// Experimental.
	Fqn() *string
	// Experimental.
	FriendlyUniqueId() *string
	Id() *string
	SetId(val *string)
	IdInput() *string
	// Experimental.
	Lifecycle() *cdktf.TerraformResourceLifecycle
	// Experimental.
	SetLifecycle(val *cdktf.TerraformResourceLifecycle)
	Name() *string
	SetName(val *string)
	NameInput() *string
	// The tree node.
	Node() constructs.Node
	NodeId() *string
	// Experimental.
	Provider() cdktf.TerraformProvider
	// Experimental.
	SetProvider(val cdktf.TerraformProvider)
	// Experimental.
	Provisioners() *[]interface{}
	// Experimental.
	SetProvisioners(val *[]interface{})
	// Experimental.
	RawOverrides() interface{}
	Repository() *string
	SetRepository(val *string)
	RepositoryInput() *string
	Rules() RepositoryRulesetRulesOutputReference
	RulesetId() *float64
	RulesInput() *RepositoryRulesetRules
	Target() *string
	SetTarget(val *string)
	TargetInput() *string
	// Experimental.
	TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata
	// Experimental.
	TerraformMetaArguments() *map[string]interface{}
	// Experimental.
	TerraformResourceType() *string
	// Adds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move.
	// Experimental.
	AddMoveTarget(moveTarget *string)
	// Experimental.
	AddOverride(path *string, value interface{})
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	HasResourceMove() interface{}
	// Experimental.
	ImportFrom(id *string, provider cdktf.TerraformProvider)
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	// Move the resource corresponding to "id" to this resource.
	//
	// Note that the resource being moved from must be marked as moved using it's instance function.
	// Experimental.
	MoveFromId(id *string)
	// Moves this resource to the target resource given by moveTarget.
	// Experimental.
	MoveTo(moveTarget *string, index interface{})
	// Moves this resource to the resource corresponding to "id".
	// Experimental.
	MoveToId(id *string)
	// Overrides the auto-generated logical ID with a specific ID.
	// Experimental.
	OverrideLogicalId(newLogicalId *string)
	PutBypassActors(value interface{})
	PutConditions(value *RepositoryRulesetConditions)
	PutRules(value *RepositoryRulesetRules)
	ResetBypassActors()
	ResetConditions()
	ResetId()
	// Resets a previously passed logical Id to use the auto-generated logical id again.
	// Experimental.
	ResetOverrideLogicalId()
	SynthesizeAttributes() *map[string]interface{}
	SynthesizeHclAttributes() *map[string]interface{}
	// Experimental.
	ToHclTerraform() interface{}
	// Experimental.
	ToMetadata() interface{}
	// Returns a string representation of this construct.
	ToString() *string
	// Adds this resource to the terraform JSON output.
	// Experimental.
	ToTerraform() interface{}
}

Represents a {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset github_repository_ruleset}.

type RepositoryRulesetBypassActors

type RepositoryRulesetBypassActors struct {
	// The type of actor that can bypass a ruleset. See https://docs.github.com/en/rest/repos/rules for more information.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#actor_type RepositoryRuleset#actor_type}
	ActorType *string `field:"required" json:"actorType" yaml:"actorType"`
	// When the specified actor can bypass the ruleset.
	//
	// pull_request means that an actor can only bypass rules on pull requests. Can be one of: `always`, `pull_request`, `exempt`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#bypass_mode RepositoryRuleset#bypass_mode}
	BypassMode *string `field:"required" json:"bypassMode" yaml:"bypassMode"`
	// The ID of the actor that can bypass a ruleset.
	//
	// When `actor_type` is `OrganizationAdmin`, this should be set to `1`. Some resources such as DeployKey do not have an ID and this should be omitted.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#actor_id RepositoryRuleset#actor_id}
	ActorId *float64 `field:"optional" json:"actorId" yaml:"actorId"`
}

type RepositoryRulesetBypassActorsList

type RepositoryRulesetBypassActorsList interface {
	cdktf.ComplexList
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	// The attribute on the parent resource this class is referencing.
	TerraformAttribute() *string
	SetTerraformAttribute(val *string)
	// The parent resource.
	TerraformResource() cdktf.IInterpolatingParent
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// whether the list is wrapping a set (will add tolist() to be able to access an item via an index).
	WrapsSet() *bool
	SetWrapsSet(val *bool)
	// Creating an iterator for this complex list.
	//
	// The list will be converted into a map with the mapKeyAttributeName as the key.
	// Experimental.
	AllWithMapKey(mapKeyAttributeName *string) cdktf.DynamicListTerraformIterator
	// Experimental.
	ComputeFqn() *string
	Get(index *float64) RepositoryRulesetBypassActorsOutputReference
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetBypassActorsList

func NewRepositoryRulesetBypassActorsList(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool) RepositoryRulesetBypassActorsList

type RepositoryRulesetBypassActorsOutputReference

type RepositoryRulesetBypassActorsOutputReference interface {
	cdktf.ComplexObject
	ActorId() *float64
	SetActorId(val *float64)
	ActorIdInput() *float64
	ActorType() *string
	SetActorType(val *string)
	ActorTypeInput() *string
	BypassMode() *string
	SetBypassMode(val *string)
	BypassModeInput() *string
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	ResetActorId()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetBypassActorsOutputReference

func NewRepositoryRulesetBypassActorsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool) RepositoryRulesetBypassActorsOutputReference

type RepositoryRulesetConditions

type RepositoryRulesetConditions struct {
	// ref_name block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#ref_name RepositoryRuleset#ref_name}
	RefName *RepositoryRulesetConditionsRefName `field:"required" json:"refName" yaml:"refName"`
}

type RepositoryRulesetConditionsOutputReference

type RepositoryRulesetConditionsOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *RepositoryRulesetConditions
	SetInternalValue(val *RepositoryRulesetConditions)
	RefName() RepositoryRulesetConditionsRefNameOutputReference
	RefNameInput() *RepositoryRulesetConditionsRefName
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	PutRefName(value *RepositoryRulesetConditionsRefName)
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetConditionsOutputReference

func NewRepositoryRulesetConditionsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) RepositoryRulesetConditionsOutputReference

type RepositoryRulesetConditionsRefName

type RepositoryRulesetConditionsRefName struct {
	// Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#exclude RepositoryRuleset#exclude}
	Exclude *[]*string `field:"required" json:"exclude" yaml:"exclude"`
	// Array of ref names or patterns to include.
	//
	// One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#include RepositoryRuleset#include}
	Include *[]*string `field:"required" json:"include" yaml:"include"`
}

type RepositoryRulesetConditionsRefNameOutputReference

type RepositoryRulesetConditionsRefNameOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	Exclude() *[]*string
	SetExclude(val *[]*string)
	ExcludeInput() *[]*string
	// Experimental.
	Fqn() *string
	Include() *[]*string
	SetInclude(val *[]*string)
	IncludeInput() *[]*string
	InternalValue() *RepositoryRulesetConditionsRefName
	SetInternalValue(val *RepositoryRulesetConditionsRefName)
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetConditionsRefNameOutputReference

func NewRepositoryRulesetConditionsRefNameOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) RepositoryRulesetConditionsRefNameOutputReference

type RepositoryRulesetConfig

type RepositoryRulesetConfig struct {
	// Experimental.
	Connection interface{} `field:"optional" json:"connection" yaml:"connection"`
	// Experimental.
	Count interface{} `field:"optional" json:"count" yaml:"count"`
	// Experimental.
	DependsOn *[]cdktf.ITerraformDependable `field:"optional" json:"dependsOn" yaml:"dependsOn"`
	// Experimental.
	ForEach cdktf.ITerraformIterator `field:"optional" json:"forEach" yaml:"forEach"`
	// Experimental.
	Lifecycle *cdktf.TerraformResourceLifecycle `field:"optional" json:"lifecycle" yaml:"lifecycle"`
	// Experimental.
	Provider cdktf.TerraformProvider `field:"optional" json:"provider" yaml:"provider"`
	// Experimental.
	Provisioners *[]interface{} `field:"optional" json:"provisioners" yaml:"provisioners"`
	// Possible values for Enforcement are `disabled`, `active`, `evaluate`. Note: `evaluate` is currently only supported for owners of type `organization`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#enforcement RepositoryRuleset#enforcement}
	Enforcement *string `field:"required" json:"enforcement" yaml:"enforcement"`
	// The name of the ruleset.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#name RepositoryRuleset#name}
	Name *string `field:"required" json:"name" yaml:"name"`
	// Name of the repository to apply ruleset to.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#repository RepositoryRuleset#repository}
	Repository *string `field:"required" json:"repository" yaml:"repository"`
	// rules block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#rules RepositoryRuleset#rules}
	Rules *RepositoryRulesetRules `field:"required" json:"rules" yaml:"rules"`
	// Possible values are `branch`, `push` and `tag`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#target RepositoryRuleset#target}
	Target *string `field:"required" json:"target" yaml:"target"`
	// bypass_actors block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#bypass_actors RepositoryRuleset#bypass_actors}
	BypassActors interface{} `field:"optional" json:"bypassActors" yaml:"bypassActors"`
	// conditions block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#conditions RepositoryRuleset#conditions}
	Conditions *RepositoryRulesetConditions `field:"optional" json:"conditions" yaml:"conditions"`
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#id RepositoryRuleset#id}.
	//
	// Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
	// If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
	Id *string `field:"optional" json:"id" yaml:"id"`
}

type RepositoryRulesetRules

type RepositoryRulesetRules struct {
	// branch_name_pattern block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#branch_name_pattern RepositoryRuleset#branch_name_pattern}
	BranchNamePattern *RepositoryRulesetRulesBranchNamePattern `field:"optional" json:"branchNamePattern" yaml:"branchNamePattern"`
	// commit_author_email_pattern block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#commit_author_email_pattern RepositoryRuleset#commit_author_email_pattern}
	CommitAuthorEmailPattern *RepositoryRulesetRulesCommitAuthorEmailPattern `field:"optional" json:"commitAuthorEmailPattern" yaml:"commitAuthorEmailPattern"`
	// commit_message_pattern block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#commit_message_pattern RepositoryRuleset#commit_message_pattern}
	CommitMessagePattern *RepositoryRulesetRulesCommitMessagePattern `field:"optional" json:"commitMessagePattern" yaml:"commitMessagePattern"`
	// committer_email_pattern block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#committer_email_pattern RepositoryRuleset#committer_email_pattern}
	CommitterEmailPattern *RepositoryRulesetRulesCommitterEmailPattern `field:"optional" json:"committerEmailPattern" yaml:"committerEmailPattern"`
	// Only allow users with bypass permission to create matching refs.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#creation RepositoryRuleset#creation}
	Creation interface{} `field:"optional" json:"creation" yaml:"creation"`
	// Only allow users with bypass permissions to delete matching refs.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#deletion RepositoryRuleset#deletion}
	Deletion interface{} `field:"optional" json:"deletion" yaml:"deletion"`
	// file_extension_restriction block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#file_extension_restriction RepositoryRuleset#file_extension_restriction}
	FileExtensionRestriction *RepositoryRulesetRulesFileExtensionRestriction `field:"optional" json:"fileExtensionRestriction" yaml:"fileExtensionRestriction"`
	// file_path_restriction block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#file_path_restriction RepositoryRuleset#file_path_restriction}
	FilePathRestriction *RepositoryRulesetRulesFilePathRestriction `field:"optional" json:"filePathRestriction" yaml:"filePathRestriction"`
	// max_file_path_length block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#max_file_path_length RepositoryRuleset#max_file_path_length}
	MaxFilePathLength *RepositoryRulesetRulesMaxFilePathLength `field:"optional" json:"maxFilePathLength" yaml:"maxFilePathLength"`
	// max_file_size block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#max_file_size RepositoryRuleset#max_file_size}
	MaxFileSize *RepositoryRulesetRulesMaxFileSize `field:"optional" json:"maxFileSize" yaml:"maxFileSize"`
	// merge_queue block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#merge_queue RepositoryRuleset#merge_queue}
	MergeQueue *RepositoryRulesetRulesMergeQueue `field:"optional" json:"mergeQueue" yaml:"mergeQueue"`
	// Prevent users with push access from force pushing to branches.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#non_fast_forward RepositoryRuleset#non_fast_forward}
	NonFastForward interface{} `field:"optional" json:"nonFastForward" yaml:"nonFastForward"`
	// pull_request block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#pull_request RepositoryRuleset#pull_request}
	PullRequest *RepositoryRulesetRulesPullRequest `field:"optional" json:"pullRequest" yaml:"pullRequest"`
	// required_code_scanning block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#required_code_scanning RepositoryRuleset#required_code_scanning}
	RequiredCodeScanning *RepositoryRulesetRulesRequiredCodeScanning `field:"optional" json:"requiredCodeScanning" yaml:"requiredCodeScanning"`
	// required_deployments block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#required_deployments RepositoryRuleset#required_deployments}
	RequiredDeployments *RepositoryRulesetRulesRequiredDeployments `field:"optional" json:"requiredDeployments" yaml:"requiredDeployments"`
	// Prevent merge commits from being pushed to matching branches.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#required_linear_history RepositoryRuleset#required_linear_history}
	RequiredLinearHistory interface{} `field:"optional" json:"requiredLinearHistory" yaml:"requiredLinearHistory"`
	// Commits pushed to matching branches must have verified signatures.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#required_signatures RepositoryRuleset#required_signatures}
	RequiredSignatures interface{} `field:"optional" json:"requiredSignatures" yaml:"requiredSignatures"`
	// required_status_checks block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#required_status_checks RepositoryRuleset#required_status_checks}
	RequiredStatusChecks *RepositoryRulesetRulesRequiredStatusChecks `field:"optional" json:"requiredStatusChecks" yaml:"requiredStatusChecks"`
	// tag_name_pattern block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#tag_name_pattern RepositoryRuleset#tag_name_pattern}
	TagNamePattern *RepositoryRulesetRulesTagNamePattern `field:"optional" json:"tagNamePattern" yaml:"tagNamePattern"`
	// Only allow users with bypass permission to update matching refs.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#update RepositoryRuleset#update}
	Update interface{} `field:"optional" json:"update" yaml:"update"`
	// Branch can pull changes from its upstream repository.
	//
	// This is only applicable to forked repositories. Requires `update` to be set to `true`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#update_allows_fetch_and_merge RepositoryRuleset#update_allows_fetch_and_merge}
	UpdateAllowsFetchAndMerge interface{} `field:"optional" json:"updateAllowsFetchAndMerge" yaml:"updateAllowsFetchAndMerge"`
}

type RepositoryRulesetRulesBranchNamePattern

type RepositoryRulesetRulesBranchNamePattern struct {
	// The operator to use for matching. Can be one of: `starts_with`, `ends_with`, `contains`, `regex`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#operator RepositoryRuleset#operator}
	Operator *string `field:"required" json:"operator" yaml:"operator"`
	// The pattern to match with.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#pattern RepositoryRuleset#pattern}
	Pattern *string `field:"required" json:"pattern" yaml:"pattern"`
	// How this rule will appear to users.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#name RepositoryRuleset#name}
	Name *string `field:"optional" json:"name" yaml:"name"`
	// If true, the rule will fail if the pattern matches.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#negate RepositoryRuleset#negate}
	Negate interface{} `field:"optional" json:"negate" yaml:"negate"`
}

type RepositoryRulesetRulesBranchNamePatternOutputReference

type RepositoryRulesetRulesBranchNamePatternOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *RepositoryRulesetRulesBranchNamePattern
	SetInternalValue(val *RepositoryRulesetRulesBranchNamePattern)
	Name() *string
	SetName(val *string)
	NameInput() *string
	Negate() interface{}
	SetNegate(val interface{})
	NegateInput() interface{}
	Operator() *string
	SetOperator(val *string)
	OperatorInput() *string
	Pattern() *string
	SetPattern(val *string)
	PatternInput() *string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	ResetName()
	ResetNegate()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesBranchNamePatternOutputReference

func NewRepositoryRulesetRulesBranchNamePatternOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) RepositoryRulesetRulesBranchNamePatternOutputReference

type RepositoryRulesetRulesCommitAuthorEmailPattern

type RepositoryRulesetRulesCommitAuthorEmailPattern struct {
	// The operator to use for matching. Can be one of: `starts_with`, `ends_with`, `contains`, `regex`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#operator RepositoryRuleset#operator}
	Operator *string `field:"required" json:"operator" yaml:"operator"`
	// The pattern to match with.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#pattern RepositoryRuleset#pattern}
	Pattern *string `field:"required" json:"pattern" yaml:"pattern"`
	// How this rule will appear to users.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#name RepositoryRuleset#name}
	Name *string `field:"optional" json:"name" yaml:"name"`
	// If true, the rule will fail if the pattern matches.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#negate RepositoryRuleset#negate}
	Negate interface{} `field:"optional" json:"negate" yaml:"negate"`
}

type RepositoryRulesetRulesCommitAuthorEmailPatternOutputReference

type RepositoryRulesetRulesCommitAuthorEmailPatternOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *RepositoryRulesetRulesCommitAuthorEmailPattern
	SetInternalValue(val *RepositoryRulesetRulesCommitAuthorEmailPattern)
	Name() *string
	SetName(val *string)
	NameInput() *string
	Negate() interface{}
	SetNegate(val interface{})
	NegateInput() interface{}
	Operator() *string
	SetOperator(val *string)
	OperatorInput() *string
	Pattern() *string
	SetPattern(val *string)
	PatternInput() *string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	ResetName()
	ResetNegate()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesCommitAuthorEmailPatternOutputReference

func NewRepositoryRulesetRulesCommitAuthorEmailPatternOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) RepositoryRulesetRulesCommitAuthorEmailPatternOutputReference

type RepositoryRulesetRulesCommitMessagePattern

type RepositoryRulesetRulesCommitMessagePattern struct {
	// The operator to use for matching. Can be one of: `starts_with`, `ends_with`, `contains`, `regex`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#operator RepositoryRuleset#operator}
	Operator *string `field:"required" json:"operator" yaml:"operator"`
	// The pattern to match with.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#pattern RepositoryRuleset#pattern}
	Pattern *string `field:"required" json:"pattern" yaml:"pattern"`
	// How this rule will appear to users.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#name RepositoryRuleset#name}
	Name *string `field:"optional" json:"name" yaml:"name"`
	// If true, the rule will fail if the pattern matches.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#negate RepositoryRuleset#negate}
	Negate interface{} `field:"optional" json:"negate" yaml:"negate"`
}

type RepositoryRulesetRulesCommitMessagePatternOutputReference

type RepositoryRulesetRulesCommitMessagePatternOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *RepositoryRulesetRulesCommitMessagePattern
	SetInternalValue(val *RepositoryRulesetRulesCommitMessagePattern)
	Name() *string
	SetName(val *string)
	NameInput() *string
	Negate() interface{}
	SetNegate(val interface{})
	NegateInput() interface{}
	Operator() *string
	SetOperator(val *string)
	OperatorInput() *string
	Pattern() *string
	SetPattern(val *string)
	PatternInput() *string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	ResetName()
	ResetNegate()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesCommitMessagePatternOutputReference

func NewRepositoryRulesetRulesCommitMessagePatternOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) RepositoryRulesetRulesCommitMessagePatternOutputReference

type RepositoryRulesetRulesCommitterEmailPattern

type RepositoryRulesetRulesCommitterEmailPattern struct {
	// The operator to use for matching. Can be one of: `starts_with`, `ends_with`, `contains`, `regex`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#operator RepositoryRuleset#operator}
	Operator *string `field:"required" json:"operator" yaml:"operator"`
	// The pattern to match with.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#pattern RepositoryRuleset#pattern}
	Pattern *string `field:"required" json:"pattern" yaml:"pattern"`
	// How this rule will appear to users.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#name RepositoryRuleset#name}
	Name *string `field:"optional" json:"name" yaml:"name"`
	// If true, the rule will fail if the pattern matches.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#negate RepositoryRuleset#negate}
	Negate interface{} `field:"optional" json:"negate" yaml:"negate"`
}

type RepositoryRulesetRulesCommitterEmailPatternOutputReference

type RepositoryRulesetRulesCommitterEmailPatternOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *RepositoryRulesetRulesCommitterEmailPattern
	SetInternalValue(val *RepositoryRulesetRulesCommitterEmailPattern)
	Name() *string
	SetName(val *string)
	NameInput() *string
	Negate() interface{}
	SetNegate(val interface{})
	NegateInput() interface{}
	Operator() *string
	SetOperator(val *string)
	OperatorInput() *string
	Pattern() *string
	SetPattern(val *string)
	PatternInput() *string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	ResetName()
	ResetNegate()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesCommitterEmailPatternOutputReference

func NewRepositoryRulesetRulesCommitterEmailPatternOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) RepositoryRulesetRulesCommitterEmailPatternOutputReference

type RepositoryRulesetRulesFileExtensionRestriction added in v15.1.0

type RepositoryRulesetRulesFileExtensionRestriction struct {
	// A list of file extensions.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#restricted_file_extensions RepositoryRuleset#restricted_file_extensions}
	RestrictedFileExtensions *[]*string `field:"required" json:"restrictedFileExtensions" yaml:"restrictedFileExtensions"`
}

type RepositoryRulesetRulesFileExtensionRestrictionOutputReference added in v15.1.0

type RepositoryRulesetRulesFileExtensionRestrictionOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *RepositoryRulesetRulesFileExtensionRestriction
	SetInternalValue(val *RepositoryRulesetRulesFileExtensionRestriction)
	RestrictedFileExtensions() *[]*string
	SetRestrictedFileExtensions(val *[]*string)
	RestrictedFileExtensionsInput() *[]*string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesFileExtensionRestrictionOutputReference added in v15.1.0

func NewRepositoryRulesetRulesFileExtensionRestrictionOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) RepositoryRulesetRulesFileExtensionRestrictionOutputReference

type RepositoryRulesetRulesFilePathRestriction added in v15.1.0

type RepositoryRulesetRulesFilePathRestriction struct {
	// The file paths that are restricted from being pushed to the commit graph.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#restricted_file_paths RepositoryRuleset#restricted_file_paths}
	RestrictedFilePaths *[]*string `field:"required" json:"restrictedFilePaths" yaml:"restrictedFilePaths"`
}

type RepositoryRulesetRulesFilePathRestrictionOutputReference added in v15.1.0

type RepositoryRulesetRulesFilePathRestrictionOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *RepositoryRulesetRulesFilePathRestriction
	SetInternalValue(val *RepositoryRulesetRulesFilePathRestriction)
	RestrictedFilePaths() *[]*string
	SetRestrictedFilePaths(val *[]*string)
	RestrictedFilePathsInput() *[]*string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesFilePathRestrictionOutputReference added in v15.1.0

func NewRepositoryRulesetRulesFilePathRestrictionOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) RepositoryRulesetRulesFilePathRestrictionOutputReference

type RepositoryRulesetRulesMaxFilePathLength added in v15.2.0

type RepositoryRulesetRulesMaxFilePathLength struct {
	// The maximum allowed length of a file path.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#max_file_path_length RepositoryRuleset#max_file_path_length}
	MaxFilePathLength *float64 `field:"required" json:"maxFilePathLength" yaml:"maxFilePathLength"`
}

type RepositoryRulesetRulesMaxFilePathLengthOutputReference added in v15.2.0

type RepositoryRulesetRulesMaxFilePathLengthOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *RepositoryRulesetRulesMaxFilePathLength
	SetInternalValue(val *RepositoryRulesetRulesMaxFilePathLength)
	MaxFilePathLength() *float64
	SetMaxFilePathLength(val *float64)
	MaxFilePathLengthInput() *float64
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesMaxFilePathLengthOutputReference added in v15.2.0

func NewRepositoryRulesetRulesMaxFilePathLengthOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) RepositoryRulesetRulesMaxFilePathLengthOutputReference

type RepositoryRulesetRulesMaxFileSize added in v15.1.0

type RepositoryRulesetRulesMaxFileSize struct {
	// The maximum allowed size of a file in megabytes (MB). Valid range is 1-100 MB.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#max_file_size RepositoryRuleset#max_file_size}
	MaxFileSize *float64 `field:"required" json:"maxFileSize" yaml:"maxFileSize"`
}

type RepositoryRulesetRulesMaxFileSizeOutputReference added in v15.1.0

type RepositoryRulesetRulesMaxFileSizeOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *RepositoryRulesetRulesMaxFileSize
	SetInternalValue(val *RepositoryRulesetRulesMaxFileSize)
	MaxFileSize() *float64
	SetMaxFileSize(val *float64)
	MaxFileSizeInput() *float64
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesMaxFileSizeOutputReference added in v15.1.0

func NewRepositoryRulesetRulesMaxFileSizeOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) RepositoryRulesetRulesMaxFileSizeOutputReference

type RepositoryRulesetRulesMergeQueue

type RepositoryRulesetRulesMergeQueue struct {
	// Maximum time for a required status check to report a conclusion.
	//
	// After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed. Defaults to `60`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#check_response_timeout_minutes RepositoryRuleset#check_response_timeout_minutes}
	CheckResponseTimeoutMinutes *float64 `field:"optional" json:"checkResponseTimeoutMinutes" yaml:"checkResponseTimeoutMinutes"`
	// When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge.
	//
	// When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge. Can be one of: ALLGREEN, HEADGREEN. Defaults to `ALLGREEN`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#grouping_strategy RepositoryRuleset#grouping_strategy}
	GroupingStrategy *string `field:"optional" json:"groupingStrategy" yaml:"groupingStrategy"`
	// Limit the number of queued pull requests requesting checks and workflow runs at the same time. Defaults to `5`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#max_entries_to_build RepositoryRuleset#max_entries_to_build}
	MaxEntriesToBuild *float64 `field:"optional" json:"maxEntriesToBuild" yaml:"maxEntriesToBuild"`
	// The maximum number of PRs that will be merged together in a group. Defaults to `5`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#max_entries_to_merge RepositoryRuleset#max_entries_to_merge}
	MaxEntriesToMerge *float64 `field:"optional" json:"maxEntriesToMerge" yaml:"maxEntriesToMerge"`
	// Method to use when merging changes from queued pull requests.
	//
	// Can be one of: MERGE, SQUASH, REBASE. Defaults to `MERGE`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#merge_method RepositoryRuleset#merge_method}
	MergeMethod *string `field:"optional" json:"mergeMethod" yaml:"mergeMethod"`
	// The minimum number of PRs that will be merged together in a group. Defaults to `1`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#min_entries_to_merge RepositoryRuleset#min_entries_to_merge}
	MinEntriesToMerge *float64 `field:"optional" json:"minEntriesToMerge" yaml:"minEntriesToMerge"`
	// The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met.
	//
	// After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged. Defaults to `5`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#min_entries_to_merge_wait_minutes RepositoryRuleset#min_entries_to_merge_wait_minutes}
	MinEntriesToMergeWaitMinutes *float64 `field:"optional" json:"minEntriesToMergeWaitMinutes" yaml:"minEntriesToMergeWaitMinutes"`
}

type RepositoryRulesetRulesMergeQueueOutputReference

type RepositoryRulesetRulesMergeQueueOutputReference interface {
	cdktf.ComplexObject
	CheckResponseTimeoutMinutes() *float64
	SetCheckResponseTimeoutMinutes(val *float64)
	CheckResponseTimeoutMinutesInput() *float64
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	GroupingStrategy() *string
	SetGroupingStrategy(val *string)
	GroupingStrategyInput() *string
	InternalValue() *RepositoryRulesetRulesMergeQueue
	SetInternalValue(val *RepositoryRulesetRulesMergeQueue)
	MaxEntriesToBuild() *float64
	SetMaxEntriesToBuild(val *float64)
	MaxEntriesToBuildInput() *float64
	MaxEntriesToMerge() *float64
	SetMaxEntriesToMerge(val *float64)
	MaxEntriesToMergeInput() *float64
	MergeMethod() *string
	SetMergeMethod(val *string)
	MergeMethodInput() *string
	MinEntriesToMerge() *float64
	SetMinEntriesToMerge(val *float64)
	MinEntriesToMergeInput() *float64
	MinEntriesToMergeWaitMinutes() *float64
	SetMinEntriesToMergeWaitMinutes(val *float64)
	MinEntriesToMergeWaitMinutesInput() *float64
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	ResetCheckResponseTimeoutMinutes()
	ResetGroupingStrategy()
	ResetMaxEntriesToBuild()
	ResetMaxEntriesToMerge()
	ResetMergeMethod()
	ResetMinEntriesToMerge()
	ResetMinEntriesToMergeWaitMinutes()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesMergeQueueOutputReference

func NewRepositoryRulesetRulesMergeQueueOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) RepositoryRulesetRulesMergeQueueOutputReference

type RepositoryRulesetRulesOutputReference

type RepositoryRulesetRulesOutputReference interface {
	cdktf.ComplexObject
	BranchNamePattern() RepositoryRulesetRulesBranchNamePatternOutputReference
	BranchNamePatternInput() *RepositoryRulesetRulesBranchNamePattern
	CommitAuthorEmailPattern() RepositoryRulesetRulesCommitAuthorEmailPatternOutputReference
	CommitAuthorEmailPatternInput() *RepositoryRulesetRulesCommitAuthorEmailPattern
	CommitMessagePattern() RepositoryRulesetRulesCommitMessagePatternOutputReference
	CommitMessagePatternInput() *RepositoryRulesetRulesCommitMessagePattern
	CommitterEmailPattern() RepositoryRulesetRulesCommitterEmailPatternOutputReference
	CommitterEmailPatternInput() *RepositoryRulesetRulesCommitterEmailPattern
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	Creation() interface{}
	SetCreation(val interface{})
	CreationInput() interface{}
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	Deletion() interface{}
	SetDeletion(val interface{})
	DeletionInput() interface{}
	FileExtensionRestriction() RepositoryRulesetRulesFileExtensionRestrictionOutputReference
	FileExtensionRestrictionInput() *RepositoryRulesetRulesFileExtensionRestriction
	FilePathRestriction() RepositoryRulesetRulesFilePathRestrictionOutputReference
	FilePathRestrictionInput() *RepositoryRulesetRulesFilePathRestriction
	// Experimental.
	Fqn() *string
	InternalValue() *RepositoryRulesetRules
	SetInternalValue(val *RepositoryRulesetRules)
	MaxFilePathLength() RepositoryRulesetRulesMaxFilePathLengthOutputReference
	MaxFilePathLengthInput() *RepositoryRulesetRulesMaxFilePathLength
	MaxFileSize() RepositoryRulesetRulesMaxFileSizeOutputReference
	MaxFileSizeInput() *RepositoryRulesetRulesMaxFileSize
	MergeQueue() RepositoryRulesetRulesMergeQueueOutputReference
	MergeQueueInput() *RepositoryRulesetRulesMergeQueue
	NonFastForward() interface{}
	SetNonFastForward(val interface{})
	NonFastForwardInput() interface{}
	PullRequest() RepositoryRulesetRulesPullRequestOutputReference
	PullRequestInput() *RepositoryRulesetRulesPullRequest
	RequiredCodeScanning() RepositoryRulesetRulesRequiredCodeScanningOutputReference
	RequiredCodeScanningInput() *RepositoryRulesetRulesRequiredCodeScanning
	RequiredDeployments() RepositoryRulesetRulesRequiredDeploymentsOutputReference
	RequiredDeploymentsInput() *RepositoryRulesetRulesRequiredDeployments
	RequiredLinearHistory() interface{}
	SetRequiredLinearHistory(val interface{})
	RequiredLinearHistoryInput() interface{}
	RequiredSignatures() interface{}
	SetRequiredSignatures(val interface{})
	RequiredSignaturesInput() interface{}
	RequiredStatusChecks() RepositoryRulesetRulesRequiredStatusChecksOutputReference
	RequiredStatusChecksInput() *RepositoryRulesetRulesRequiredStatusChecks
	TagNamePattern() RepositoryRulesetRulesTagNamePatternOutputReference
	TagNamePatternInput() *RepositoryRulesetRulesTagNamePattern
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	Update() interface{}
	SetUpdate(val interface{})
	UpdateAllowsFetchAndMerge() interface{}
	SetUpdateAllowsFetchAndMerge(val interface{})
	UpdateAllowsFetchAndMergeInput() interface{}
	UpdateInput() interface{}
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	PutBranchNamePattern(value *RepositoryRulesetRulesBranchNamePattern)
	PutCommitAuthorEmailPattern(value *RepositoryRulesetRulesCommitAuthorEmailPattern)
	PutCommitMessagePattern(value *RepositoryRulesetRulesCommitMessagePattern)
	PutCommitterEmailPattern(value *RepositoryRulesetRulesCommitterEmailPattern)
	PutFileExtensionRestriction(value *RepositoryRulesetRulesFileExtensionRestriction)
	PutFilePathRestriction(value *RepositoryRulesetRulesFilePathRestriction)
	PutMaxFilePathLength(value *RepositoryRulesetRulesMaxFilePathLength)
	PutMaxFileSize(value *RepositoryRulesetRulesMaxFileSize)
	PutMergeQueue(value *RepositoryRulesetRulesMergeQueue)
	PutPullRequest(value *RepositoryRulesetRulesPullRequest)
	PutRequiredCodeScanning(value *RepositoryRulesetRulesRequiredCodeScanning)
	PutRequiredDeployments(value *RepositoryRulesetRulesRequiredDeployments)
	PutRequiredStatusChecks(value *RepositoryRulesetRulesRequiredStatusChecks)
	PutTagNamePattern(value *RepositoryRulesetRulesTagNamePattern)
	ResetBranchNamePattern()
	ResetCommitAuthorEmailPattern()
	ResetCommitMessagePattern()
	ResetCommitterEmailPattern()
	ResetCreation()
	ResetDeletion()
	ResetFileExtensionRestriction()
	ResetFilePathRestriction()
	ResetMaxFilePathLength()
	ResetMaxFileSize()
	ResetMergeQueue()
	ResetNonFastForward()
	ResetPullRequest()
	ResetRequiredCodeScanning()
	ResetRequiredDeployments()
	ResetRequiredLinearHistory()
	ResetRequiredSignatures()
	ResetRequiredStatusChecks()
	ResetTagNamePattern()
	ResetUpdate()
	ResetUpdateAllowsFetchAndMerge()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesOutputReference

func NewRepositoryRulesetRulesOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) RepositoryRulesetRulesOutputReference

type RepositoryRulesetRulesPullRequest

type RepositoryRulesetRulesPullRequest struct {
	// New, reviewable commits pushed will dismiss previous pull request review approvals. Defaults to `false`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#dismiss_stale_reviews_on_push RepositoryRuleset#dismiss_stale_reviews_on_push}
	DismissStaleReviewsOnPush interface{} `field:"optional" json:"dismissStaleReviewsOnPush" yaml:"dismissStaleReviewsOnPush"`
	// Require an approving review in pull requests that modify files that have a designated code owner. Defaults to `false`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#require_code_owner_review RepositoryRuleset#require_code_owner_review}
	RequireCodeOwnerReview interface{} `field:"optional" json:"requireCodeOwnerReview" yaml:"requireCodeOwnerReview"`
	// The number of approving reviews that are required before a pull request can be merged. Defaults to `0`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#required_approving_review_count RepositoryRuleset#required_approving_review_count}
	RequiredApprovingReviewCount *float64 `field:"optional" json:"requiredApprovingReviewCount" yaml:"requiredApprovingReviewCount"`
	// All conversations on code must be resolved before a pull request can be merged. Defaults to `false`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#required_review_thread_resolution RepositoryRuleset#required_review_thread_resolution}
	RequiredReviewThreadResolution interface{} `field:"optional" json:"requiredReviewThreadResolution" yaml:"requiredReviewThreadResolution"`
	// Whether the most recent reviewable push must be approved by someone other than the person who pushed it.
	//
	// Defaults to `false`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#require_last_push_approval RepositoryRuleset#require_last_push_approval}
	RequireLastPushApproval interface{} `field:"optional" json:"requireLastPushApproval" yaml:"requireLastPushApproval"`
}

type RepositoryRulesetRulesPullRequestOutputReference

type RepositoryRulesetRulesPullRequestOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	DismissStaleReviewsOnPush() interface{}
	SetDismissStaleReviewsOnPush(val interface{})
	DismissStaleReviewsOnPushInput() interface{}
	// Experimental.
	Fqn() *string
	InternalValue() *RepositoryRulesetRulesPullRequest
	SetInternalValue(val *RepositoryRulesetRulesPullRequest)
	RequireCodeOwnerReview() interface{}
	SetRequireCodeOwnerReview(val interface{})
	RequireCodeOwnerReviewInput() interface{}
	RequiredApprovingReviewCount() *float64
	SetRequiredApprovingReviewCount(val *float64)
	RequiredApprovingReviewCountInput() *float64
	RequiredReviewThreadResolution() interface{}
	SetRequiredReviewThreadResolution(val interface{})
	RequiredReviewThreadResolutionInput() interface{}
	RequireLastPushApproval() interface{}
	SetRequireLastPushApproval(val interface{})
	RequireLastPushApprovalInput() interface{}
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	ResetDismissStaleReviewsOnPush()
	ResetRequireCodeOwnerReview()
	ResetRequiredApprovingReviewCount()
	ResetRequiredReviewThreadResolution()
	ResetRequireLastPushApproval()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesPullRequestOutputReference

func NewRepositoryRulesetRulesPullRequestOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) RepositoryRulesetRulesPullRequestOutputReference

type RepositoryRulesetRulesRequiredCodeScanning

type RepositoryRulesetRulesRequiredCodeScanning struct {
	// required_code_scanning_tool block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#required_code_scanning_tool RepositoryRuleset#required_code_scanning_tool}
	RequiredCodeScanningTool interface{} `field:"required" json:"requiredCodeScanningTool" yaml:"requiredCodeScanningTool"`
}

type RepositoryRulesetRulesRequiredCodeScanningOutputReference

type RepositoryRulesetRulesRequiredCodeScanningOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *RepositoryRulesetRulesRequiredCodeScanning
	SetInternalValue(val *RepositoryRulesetRulesRequiredCodeScanning)
	RequiredCodeScanningTool() RepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolList
	RequiredCodeScanningToolInput() interface{}
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	PutRequiredCodeScanningTool(value interface{})
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesRequiredCodeScanningOutputReference

func NewRepositoryRulesetRulesRequiredCodeScanningOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) RepositoryRulesetRulesRequiredCodeScanningOutputReference

type RepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningTool

type RepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningTool struct {
	// The severity level at which code scanning results that raise alerts block a reference update.
	//
	// Can be one of: `none`, `errors`, `errors_and_warnings`, `all`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#alerts_threshold RepositoryRuleset#alerts_threshold}
	AlertsThreshold *string `field:"required" json:"alertsThreshold" yaml:"alertsThreshold"`
	// The severity level at which code scanning results that raise security alerts block a reference update.
	//
	// Can be one of: `none`, `critical`, `high_or_higher`, `medium_or_higher`, `all`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#security_alerts_threshold RepositoryRuleset#security_alerts_threshold}
	SecurityAlertsThreshold *string `field:"required" json:"securityAlertsThreshold" yaml:"securityAlertsThreshold"`
	// The name of a code scanning tool.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#tool RepositoryRuleset#tool}
	Tool *string `field:"required" json:"tool" yaml:"tool"`
}

type RepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolList

type RepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolList interface {
	cdktf.ComplexList
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	// The attribute on the parent resource this class is referencing.
	TerraformAttribute() *string
	SetTerraformAttribute(val *string)
	// The parent resource.
	TerraformResource() cdktf.IInterpolatingParent
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// whether the list is wrapping a set (will add tolist() to be able to access an item via an index).
	WrapsSet() *bool
	SetWrapsSet(val *bool)
	// Creating an iterator for this complex list.
	//
	// The list will be converted into a map with the mapKeyAttributeName as the key.
	// Experimental.
	AllWithMapKey(mapKeyAttributeName *string) cdktf.DynamicListTerraformIterator
	// Experimental.
	ComputeFqn() *string
	Get(index *float64) RepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolOutputReference
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolList

func NewRepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolList(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool) RepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolList

type RepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolOutputReference

type RepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolOutputReference interface {
	cdktf.ComplexObject
	AlertsThreshold() *string
	SetAlertsThreshold(val *string)
	AlertsThresholdInput() *string
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	SecurityAlertsThreshold() *string
	SetSecurityAlertsThreshold(val *string)
	SecurityAlertsThresholdInput() *string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	Tool() *string
	SetTool(val *string)
	ToolInput() *string
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolOutputReference

func NewRepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool) RepositoryRulesetRulesRequiredCodeScanningRequiredCodeScanningToolOutputReference

type RepositoryRulesetRulesRequiredDeployments

type RepositoryRulesetRulesRequiredDeployments struct {
	// The environments that must be successfully deployed to before branches can be merged.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#required_deployment_environments RepositoryRuleset#required_deployment_environments}
	RequiredDeploymentEnvironments *[]*string `field:"required" json:"requiredDeploymentEnvironments" yaml:"requiredDeploymentEnvironments"`
}

type RepositoryRulesetRulesRequiredDeploymentsOutputReference

type RepositoryRulesetRulesRequiredDeploymentsOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *RepositoryRulesetRulesRequiredDeployments
	SetInternalValue(val *RepositoryRulesetRulesRequiredDeployments)
	RequiredDeploymentEnvironments() *[]*string
	SetRequiredDeploymentEnvironments(val *[]*string)
	RequiredDeploymentEnvironmentsInput() *[]*string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesRequiredDeploymentsOutputReference

func NewRepositoryRulesetRulesRequiredDeploymentsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) RepositoryRulesetRulesRequiredDeploymentsOutputReference

type RepositoryRulesetRulesRequiredStatusChecks

type RepositoryRulesetRulesRequiredStatusChecks struct {
	// required_check block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#required_check RepositoryRuleset#required_check}
	RequiredCheck interface{} `field:"required" json:"requiredCheck" yaml:"requiredCheck"`
	// Allow repositories and branches to be created if a check would otherwise prohibit it.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#do_not_enforce_on_create RepositoryRuleset#do_not_enforce_on_create}
	DoNotEnforceOnCreate interface{} `field:"optional" json:"doNotEnforceOnCreate" yaml:"doNotEnforceOnCreate"`
	// Whether pull requests targeting a matching branch must be tested with the latest code.
	//
	// This setting will not take effect unless at least one status check is enabled. Defaults to `false`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#strict_required_status_checks_policy RepositoryRuleset#strict_required_status_checks_policy}
	StrictRequiredStatusChecksPolicy interface{} `field:"optional" json:"strictRequiredStatusChecksPolicy" yaml:"strictRequiredStatusChecksPolicy"`
}

type RepositoryRulesetRulesRequiredStatusChecksOutputReference

type RepositoryRulesetRulesRequiredStatusChecksOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	DoNotEnforceOnCreate() interface{}
	SetDoNotEnforceOnCreate(val interface{})
	DoNotEnforceOnCreateInput() interface{}
	// Experimental.
	Fqn() *string
	InternalValue() *RepositoryRulesetRulesRequiredStatusChecks
	SetInternalValue(val *RepositoryRulesetRulesRequiredStatusChecks)
	RequiredCheck() RepositoryRulesetRulesRequiredStatusChecksRequiredCheckList
	RequiredCheckInput() interface{}
	StrictRequiredStatusChecksPolicy() interface{}
	SetStrictRequiredStatusChecksPolicy(val interface{})
	StrictRequiredStatusChecksPolicyInput() interface{}
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	PutRequiredCheck(value interface{})
	ResetDoNotEnforceOnCreate()
	ResetStrictRequiredStatusChecksPolicy()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesRequiredStatusChecksOutputReference

func NewRepositoryRulesetRulesRequiredStatusChecksOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) RepositoryRulesetRulesRequiredStatusChecksOutputReference

type RepositoryRulesetRulesRequiredStatusChecksRequiredCheck

type RepositoryRulesetRulesRequiredStatusChecksRequiredCheck struct {
	// The status check context name that must be present on the commit.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#context RepositoryRuleset#context}
	Context *string `field:"required" json:"context" yaml:"context"`
	// The optional integration ID that this status check must originate from.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#integration_id RepositoryRuleset#integration_id}
	IntegrationId *float64 `field:"optional" json:"integrationId" yaml:"integrationId"`
}

type RepositoryRulesetRulesRequiredStatusChecksRequiredCheckList

type RepositoryRulesetRulesRequiredStatusChecksRequiredCheckList interface {
	cdktf.ComplexList
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	// The attribute on the parent resource this class is referencing.
	TerraformAttribute() *string
	SetTerraformAttribute(val *string)
	// The parent resource.
	TerraformResource() cdktf.IInterpolatingParent
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// whether the list is wrapping a set (will add tolist() to be able to access an item via an index).
	WrapsSet() *bool
	SetWrapsSet(val *bool)
	// Creating an iterator for this complex list.
	//
	// The list will be converted into a map with the mapKeyAttributeName as the key.
	// Experimental.
	AllWithMapKey(mapKeyAttributeName *string) cdktf.DynamicListTerraformIterator
	// Experimental.
	ComputeFqn() *string
	Get(index *float64) RepositoryRulesetRulesRequiredStatusChecksRequiredCheckOutputReference
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesRequiredStatusChecksRequiredCheckList

func NewRepositoryRulesetRulesRequiredStatusChecksRequiredCheckList(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool) RepositoryRulesetRulesRequiredStatusChecksRequiredCheckList

type RepositoryRulesetRulesRequiredStatusChecksRequiredCheckOutputReference

type RepositoryRulesetRulesRequiredStatusChecksRequiredCheckOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	Context() *string
	SetContext(val *string)
	ContextInput() *string
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	IntegrationId() *float64
	SetIntegrationId(val *float64)
	IntegrationIdInput() *float64
	InternalValue() interface{}
	SetInternalValue(val interface{})
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	ResetIntegrationId()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesRequiredStatusChecksRequiredCheckOutputReference

func NewRepositoryRulesetRulesRequiredStatusChecksRequiredCheckOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool) RepositoryRulesetRulesRequiredStatusChecksRequiredCheckOutputReference

type RepositoryRulesetRulesTagNamePattern

type RepositoryRulesetRulesTagNamePattern struct {
	// The operator to use for matching. Can be one of: `starts_with`, `ends_with`, `contains`, `regex`.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#operator RepositoryRuleset#operator}
	Operator *string `field:"required" json:"operator" yaml:"operator"`
	// The pattern to match with.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#pattern RepositoryRuleset#pattern}
	Pattern *string `field:"required" json:"pattern" yaml:"pattern"`
	// How this rule will appear to users.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#name RepositoryRuleset#name}
	Name *string `field:"optional" json:"name" yaml:"name"`
	// If true, the rule will fail if the pattern matches.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/integrations/github/6.9.0/docs/resources/repository_ruleset#negate RepositoryRuleset#negate}
	Negate interface{} `field:"optional" json:"negate" yaml:"negate"`
}

type RepositoryRulesetRulesTagNamePatternOutputReference

type RepositoryRulesetRulesTagNamePatternOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *RepositoryRulesetRulesTagNamePattern
	SetInternalValue(val *RepositoryRulesetRulesTagNamePattern)
	Name() *string
	SetName(val *string)
	NameInput() *string
	Negate() interface{}
	SetNegate(val interface{})
	NegateInput() interface{}
	Operator() *string
	SetOperator(val *string)
	OperatorInput() *string
	Pattern() *string
	SetPattern(val *string)
	PatternInput() *string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	ResetName()
	ResetNegate()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewRepositoryRulesetRulesTagNamePatternOutputReference

func NewRepositoryRulesetRulesTagNamePatternOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) RepositoryRulesetRulesTagNamePatternOutputReference

Source Files

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL