package models

import "time"

// RepoDeployKey is an HTTP token that grants git access to a specific repo.
// Stored as a SHA-256 hash; the raw token is shown once on creation.
type RepoDeployKey struct {
	ID        int64      `xorm:"'id' pk autoincr"`
	RepoID    int64      `xorm:"'repo_id' notnull index"`
	Title     string     `xorm:"'title' notnull"`
	TokenHash string     `xorm:"'token_hash' notnull unique"`
	ReadOnly  bool       `xorm:"'read_only' default true"`
	LastUsed  *time.Time `xorm:"'last_used_at'"`
	CreatedAt time.Time  `xorm:"'created_at' created"`
}
