75 lines
1.5 KiB
Go
75 lines
1.5 KiB
Go
package models
|
|
|
|
import (
|
|
"time"
|
|
|
|
"github.com/emersion/go-message/mail"
|
|
)
|
|
|
|
// This interface needs to be implemented for compliance with aerc-templates(7)
|
|
type TemplateData interface {
|
|
Account() string
|
|
AccountBackend() string
|
|
AccountFrom() *mail.Address
|
|
Folder() string
|
|
To() []*mail.Address
|
|
Cc() []*mail.Address
|
|
Bcc() []*mail.Address
|
|
From() []*mail.Address
|
|
Peer() []*mail.Address
|
|
ReplyTo() []*mail.Address
|
|
Date() time.Time
|
|
DateAutoFormat(date time.Time) string
|
|
Header(name string) string
|
|
ThreadPrefix() string
|
|
ThreadCount() int
|
|
ThreadUnread() int
|
|
ThreadFolded() bool
|
|
ThreadContext() bool
|
|
ThreadOrphan() bool
|
|
Subject() string
|
|
SubjectBase() string
|
|
Number() int
|
|
Labels() []string
|
|
Filename() string
|
|
Filenames() []string
|
|
Flags() []string
|
|
IsReplied() bool
|
|
HasAttachment() bool
|
|
Attach(string) string
|
|
IsFlagged() bool
|
|
IsRecent() bool
|
|
IsUnread() bool
|
|
IsMarked() bool
|
|
IsDraft() bool
|
|
IsForwarded() bool
|
|
MessageId() string
|
|
Role() string
|
|
Size() int
|
|
OriginalText() string
|
|
OriginalDate() time.Time
|
|
OriginalFrom() []*mail.Address
|
|
OriginalMIMEType() string
|
|
OriginalHeader(name string) string
|
|
Recent(folders ...string) int
|
|
Unread(folders ...string) int
|
|
Exists(folders ...string) int
|
|
RUE(folders ...string) string
|
|
Connected() bool
|
|
ConnectionInfo() string
|
|
ContentInfo() string
|
|
StatusInfo() string
|
|
TrayInfo() string
|
|
PendingKeys() string
|
|
Style(string, string) string
|
|
StyleSwitch(string, ...Case) string
|
|
StyleMap([]string, ...Case) []string
|
|
Signature() string
|
|
}
|
|
|
|
type Case interface {
|
|
Matches(string) bool
|
|
Value() string
|
|
Skip() bool
|
|
}
|