package axinput type DirectInsertResult struct { OK bool `json:"ok"` Inserted bool `json:"inserted"` NeedsPermission bool `json:"needsPermission"` Method string `json:"method"` Message string `json:"message"` Target string `json:"target,omitempty"` } type ClipboardResult struct { OK bool `json:"ok"` Prepared bool `json:"prepared"` Restored bool `json:"restored"` Token string `json:"token,omitempty"` Message string `json:"message"` } type FrontmostAppIdentity struct { OK bool `json:"ok"` Identity string `json:"identity,omitempty"` Message string `json:"message"` } type AutoPasteResult struct { OK bool `json:"ok"` Pasted bool `json:"pasted"` FrontmostUnchanged bool `json:"frontmostUnchanged"` Message string `json:"message"` } type Driver interface { AccessibilityTrusted(prompt bool) bool DirectInsert(text string) DirectInsertResult CopyTextToClipboard(text string) ClipboardResult FrontmostAppIdentity() FrontmostAppIdentity AutoPasteClipboardIfFrontmostUnchanged(expectedIdentity string) AutoPasteResult PrepareClipboardFallback(text string) ClipboardResult RestoreClipboardFallback(token string) ClipboardResult } func NewDriver() Driver { return newPlatformDriver() }