models/release/definition/ReleaseDefinitionArtefact.ps1

class ReleaseDefinitionArtefact {
    [string]$sourceId
    [string]$type
    [string] $alias
    [PSCustomObject]$definitionReference

    [boolean]$isPrimary
    [boolean]$isRetained



    ReleaseDefinitionArtefact() {
        $this.definitionReference = New-Object -TypeName "PSObject"
        $this.definitionReference | Add-Member -MemberType NoteProperty -Name artifactSourceDefinitionUrl -Value $([ReleaseArtefactDefinitionReference]::new())
        $this.definitionReference | Add-Member -MemberType NoteProperty -Name defaultVersionBranch -Value $([ReleaseArtefactDefinitionReference]::new())
        $this.definitionReference | Add-Member -MemberType NoteProperty -Name defaultVersionSpecific -Value $([ReleaseArtefactDefinitionReference]::new())
        $this.definitionReference | Add-Member -MemberType NoteProperty -Name defaultVersionTags -Value $([ReleaseArtefactDefinitionReference]::new())
        $this.definitionReference | Add-Member -MemberType NoteProperty -Name defaultVersionType -Value $([ReleaseArtefactDefinitionReference]::new())
        $this.definitionReference | Add-Member -MemberType NoteProperty -Name definition -Value $([ReleaseArtefactDefinitionReference]::new())
        $this.definitionReference | Add-Member -MemberType NoteProperty -Name definitions -Value $([ReleaseArtefactDefinitionReference]::new())
        $this.definitionReference | Add-Member -MemberType NoteProperty -Name IsMultiDefinitionType -Value $([ReleaseArtefactDefinitionReference]::new())
        $this.definitionReference | Add-Member -MemberType NoteProperty -Name project -Value $([ReleaseArtefactDefinitionReference]::new())
        $this.definitionReference | Add-Member -MemberType NoteProperty -Name repository -Value $([ReleaseArtefactDefinitionReference]::new())

    }

}