// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.

package atproto

// schema: com.atproto.admin.defs

import (
	"github.com/bluesky-social/indigo/lex/util"
)

// AdminDefs_AccountView is a "accountView" in the com.atproto.admin.defs schema.
type AdminDefs_AccountView struct {
	DeactivatedAt    *string                      `json:"deactivatedAt,omitempty" cborgen:"deactivatedAt,omitempty"`
	Did              string                       `json:"did" cborgen:"did"`
	Email            *string                      `json:"email,omitempty" cborgen:"email,omitempty"`
	EmailConfirmedAt *string                      `json:"emailConfirmedAt,omitempty" cborgen:"emailConfirmedAt,omitempty"`
	Handle           string                       `json:"handle" cborgen:"handle"`
	IndexedAt        string                       `json:"indexedAt" cborgen:"indexedAt"`
	InviteNote       *string                      `json:"inviteNote,omitempty" cborgen:"inviteNote,omitempty"`
	InvitedBy        *ServerDefs_InviteCode       `json:"invitedBy,omitempty" cborgen:"invitedBy,omitempty"`
	Invites          []*ServerDefs_InviteCode     `json:"invites,omitempty" cborgen:"invites,omitempty"`
	InvitesDisabled  *bool                        `json:"invitesDisabled,omitempty" cborgen:"invitesDisabled,omitempty"`
	RelatedRecords   []*util.LexiconTypeDecoder   `json:"relatedRecords,omitempty" cborgen:"relatedRecords,omitempty"`
	ThreatSignatures []*AdminDefs_ThreatSignature `json:"threatSignatures,omitempty" cborgen:"threatSignatures,omitempty"`
}

// AdminDefs_RepoBlobRef is a "repoBlobRef" in the com.atproto.admin.defs schema.
//
// RECORDTYPE: AdminDefs_RepoBlobRef
type AdminDefs_RepoBlobRef struct {
	LexiconTypeID string  `json:"$type,const=com.atproto.admin.defs#repoBlobRef" cborgen:"$type,const=com.atproto.admin.defs#repoBlobRef"`
	Cid           string  `json:"cid" cborgen:"cid"`
	Did           string  `json:"did" cborgen:"did"`
	RecordUri     *string `json:"recordUri,omitempty" cborgen:"recordUri,omitempty"`
}

// AdminDefs_RepoRef is a "repoRef" in the com.atproto.admin.defs schema.
//
// RECORDTYPE: AdminDefs_RepoRef
type AdminDefs_RepoRef struct {
	LexiconTypeID string `json:"$type,const=com.atproto.admin.defs#repoRef" cborgen:"$type,const=com.atproto.admin.defs#repoRef"`
	Did           string `json:"did" cborgen:"did"`
}

// AdminDefs_StatusAttr is a "statusAttr" in the com.atproto.admin.defs schema.
type AdminDefs_StatusAttr struct {
	Applied bool    `json:"applied" cborgen:"applied"`
	Ref     *string `json:"ref,omitempty" cborgen:"ref,omitempty"`
}

// AdminDefs_ThreatSignature is a "threatSignature" in the com.atproto.admin.defs schema.
type AdminDefs_ThreatSignature struct {
	Property string `json:"property" cborgen:"property"`
	Value    string `json:"value" cborgen:"value"`
}
