types/GitHubContext.Types.ps1xml

<?xml version="1.0" encoding="utf-8"?>
<Types>
    <Type>
        <Name>UserGitHubContext</Name>
        <Members>
            <ScriptProperty>
                <Name>TokenExpiresIn</Name>
                <GetScriptBlock>
                    if ($null -eq $this.TokenExpiresAt) { return }
                    $timeRemaining = $this.TokenExpiresAt - [DateTime]::Now
                    if ($timeRemaining.TotalSeconds -lt 0) {
                    return [TimeSpan]::Zero
                    }
                    return $timeRemaining
                </GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>RefreshTokenExpiresIn</Name>
                <GetScriptBlock>
                    if ($null -eq $this.RefreshTokenExpiresAt) { return }
                    $timeRemaining = $this.RefreshTokenExpiresAt - [DateTime]::Now
                    if ($timeRemaining.TotalSeconds -lt 0) {
                    return [TimeSpan]::Zero
                    }
                    return $timeRemaining
                </GetScriptBlock>
            </ScriptProperty>
        </Members>
    </Type>
    <Type>
        <Name>InstallationGitHubContext</Name>
        <Members>
            <ScriptProperty>
                <Name>TokenExpiresIn</Name>
                <GetScriptBlock>
                    if ($null -eq $this.TokenExpiresAt) { return }
                    $timeRemaining = $this.TokenExpiresAt - [DateTime]::Now
                    if ($timeRemaining.TotalSeconds -lt 0) {
                    return [TimeSpan]::Zero
                    }
                    return $timeRemaining
                </GetScriptBlock>
            </ScriptProperty>
        </Members>
    </Type>
</Types>