/* * Copyright 2026 Oleg Borodin * * This work is published and licensed under a Creative Commons * Attribution-NonCommercial-NoDerivatives 4.0 International License. * * Distribution of this work is permitted, but commercial use and * modifications are strictly prohibited. */ package descr const ( GrantModifyUsers = "modifyUsers" GrantModifyDatabase = "modifyDatabase" GrantModifyArtefact = "modifyArtefact" GrantModifyDummy = "modifyDummy" ) type Account struct { ID string `json:"id" db:"id"` Username string `json:"username" db:"username"` Passhash string `json:"passhash" db:"passhash"` Disabled bool `json:"disabled" db:"disabled"` CreatedAt string `json:"createdAt" db:"created_at"` UpdatedAt string `json:"updatedAt,omitempty" db:"updated_at"` } type Grant struct { ID string `json:"id" db:"id"` AccountID string `json:"accountID" db:"account_id"` Operation string `json:"operation" db:"operation"` CreatedAt string `json:"createdAt" db:"created_at"` } type GrantShortDescr struct { Operation string `json:"operation"` CreatedAt string `json:"createdAt"` } type AccountShortDescr struct { Username string `json:"username"` Disabled bool `json:"disabled"` CreatedAt string `json:"createdAt"` UpdatedAt string `json:"updatedAt,omitempty"` Grants []GrantShortDescr `json:"grants"` }