@wenathlan/extension 1.1.63 → 1.1.65

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/README.md +5 -3
  2. package/dist/datagrid.d.ts +46 -0
  3. package/dist/datagrid.d.ts.map +1 -0
  4. package/dist/evidenceviews.d.ts +45 -0
  5. package/dist/evidenceviews.d.ts.map +1 -0
  6. package/dist/index.d.ts +11 -1
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +1155 -1
  9. package/dist/index.js.map +4 -4
  10. package/dist/memory.d.ts +65 -1
  11. package/dist/memory.d.ts.map +1 -1
  12. package/dist/pickerviews.d.ts +72 -0
  13. package/dist/pickerviews.d.ts.map +1 -0
  14. package/dist/planreview.d.ts +87 -0
  15. package/dist/planreview.d.ts.map +1 -0
  16. package/dist/policy.d.ts +105 -0
  17. package/dist/policy.d.ts.map +1 -1
  18. package/dist/portability.d.ts +35 -0
  19. package/dist/portability.d.ts.map +1 -0
  20. package/dist/protocol.d.ts +248 -0
  21. package/dist/protocol.d.ts.map +1 -1
  22. package/dist/quickactions.d.ts +46 -0
  23. package/dist/quickactions.d.ts.map +1 -0
  24. package/dist/siteprefs.d.ts +45 -0
  25. package/dist/siteprefs.d.ts.map +1 -0
  26. package/dist/statusviews.d.ts +65 -0
  27. package/dist/statusviews.d.ts.map +1 -0
  28. package/dist/surfaces.d.ts +59 -0
  29. package/dist/surfaces.d.ts.map +1 -0
  30. package/dist/tourviews.d.ts +28 -0
  31. package/dist/tourviews.d.ts.map +1 -0
  32. package/dist/types.d.ts +429 -3
  33. package/dist/types.d.ts.map +1 -1
  34. package/dist/version.d.ts +1 -1
  35. package/extension/dist/background.js +1567 -2
  36. package/extension/dist/background.js.map +4 -4
  37. package/extension/dist/dashboardpage.html +14 -0
  38. package/extension/dist/dashboardpage.js +147 -0
  39. package/extension/dist/dashboardpage.js.map +7 -0
  40. package/extension/dist/manifest.json +5 -2
  41. package/extension/dist/offscreen.js +1 -0
  42. package/extension/dist/offscreen.js.map +2 -2
  43. package/extension/dist/optionspage.html +18 -0
  44. package/extension/dist/optionspage.js +267 -0
  45. package/extension/dist/optionspage.js.map +7 -0
  46. package/extension/dist/pagebridge.js.map +1 -1
  47. package/extension/dist/popup.html +4 -1
  48. package/extension/dist/popup.js +257 -0
  49. package/extension/dist/popup.js.map +3 -3
  50. package/extension/dist/sidepanel.html +7 -2
  51. package/extension/dist/sidepanel.js +360 -0
  52. package/extension/dist/sidepanel.js.map +2 -2
  53. package/extension/dist/style.css +3 -1
  54. package/extension/manifest.json +5 -2
  55. package/package.json +1 -1
package/dist/types.d.ts CHANGED
@@ -1,9 +1,9 @@
1
- export declare const protocolversion: "1.1.63";
1
+ export declare const protocolversion: "1.1.65";
2
2
  /** Every reviewed action kind. Read kinds observe, interaction kinds move focus, sensitive kinds change page or browser state. */
3
3
  export type actionkind = "observe" | "inspect" | "extract" | "wait" | "waitfor" | "waittext" | "readattribute" | "readstyle" | "readgeometry" | "readvalue" | "readtext" | "readhtml" | "countelements" | "readtable" | "readlinks" | "readimages" | "readmeta" | "readforms" | "readstorage" | "highlight" | "tablist" | "windowlist" | "tabsnapshot" | "focus" | "scroll" | "hover" | "clickdeep" | "rightclick" | "doubleclick" | "scrollpage" | "scrollby" | "scrollend" | "scrolltop" | "fullscreen" | "zoomset" | "click" | "type" | "navigate" | "select" | "presskey" | "drag" | "drop" | "upload" | "clear" | "check" | "uncheck" | "toggle" | "submit" | "reload" | "back" | "forward" | "writestorage" | "setattribute" | "removeattribute" | "evaluate" | "tabcreate" | "tabactivate" | "tabclose" | "tabreload" | "windowcreate" | "windowclose" | "windowresize" | "downloadfile" | "movepointer" | "clickpoint" | "shiftclick" | "clicktext" | "clickaria" | "clickname" | "resolvexpath" | "typetime" | "appendtext" | "setvalue" | "typeedit" | "keyhold" | "keyrelease" | "submitsearch" | "selectmulti" | "chooseradio" | "setslider" | "setdate" | "setcolor" | "expanddetails" | "dismissdialog" | "pierceshadow" | "enterframe" | "retryaction" | "mapclicks" | "verifyvisible" | "verifyenabled" | "a11ytree" | "readvisible" | "readertree" | "detectlists" | "detecttables" | "readjson" | "watchmutate" | "waitquiet" | "watchbanner" | "detectinfinitescroll" | "detectvirtual" | "detectlazy" | "readscrollpos" | "readlang" | "readoutline" | "countpages" | "listshadow" | "listframes" | "classifypage" | "fingerprintsection" | "diffsnapshots" | "readselection" | "watchfocus" | "detectsticky" | "detectscrolllock" | "readopengraph" | "detectlanguage" | "deriveselector" | "openlink" | "openprivate" | "reloadcache" | "stopnav" | "waitload" | "waiturl" | "followlink" | "spanav" | "spawait" | "rewritequery" | "setfragment" | "navlist" | "navprofile" | "detecthttp" | "readredirects" | "readfinalurl" | "handleauth" | "printpdf" | "prefetch" | "preconnect" | "deeplink" | "reopentab" | "trailaudit" | "pausenav" | "navintent" | "navrate" | "openclipboard" | "checksafe" | "batchopen" | "querytabs" | "duplicatetab" | "closepattern" | "pintab" | "mutetab" | "movetab" | "movetabwindow" | "grouptabs" | "colorgroup" | "collapsegroup" | "discardtab" | "reloadtabs" | "zoomin" | "zoomout" | "watchtab" | "switchtab" | "maximizewindow" | "minimizewindow" | "restorewindow" | "focuswindow" | "scratchwindow" | "incognitowindow" | "restoretab" | "savelayout" | "restorelayout" | "findclones" | "searchtabs" | "badgetab" | "attachmeta" | "listaudio" | "reopenrun" | "snapshotsession" | "fillform" | "filllabel" | "fillplaceholder" | "detectfields" | "generatevalues" | "saveprofiles" | "asksubmit" | "submitform" | "readerrors" | "retryform" | "runwizard" | "selectchain" | "picktypeahead" | "pickdate" | "attachfile" | "handoffcaptcha" | "fillcard" | "fillcode" | "consentpassword" | "skiphoneypot" | "detectlogin" | "detecttemplate" | "scrapetable" | "exportcsv" | "exportjson" | "exportexcel" | "copytable" | "pushsheets" | "importcsv" | "looprows" | "transformvalues" | "deduperows" | "paginateextract" | "mergepages" | "stamplerows" | "previewgrid" | "streamdisk" | "resumeextract" | "logprovenance" | "batchdownload" | "pausedownload" | "resumedownload" | "verifydownload" | "interceptmime" | "exportnetlog" | "readclipboard" | "writeclipboard" | "copyscreen" | "quarantinedownload" | "scanvirus" | "namecaptures" | "cleanupartifacts" | "shotview" | "shotfullpage" | "shotelement" | "shotregion" | "contactsheet" | "capturepdf" | "recordscreen" | "captureaudio" | "captureframe" | "downloadimages" | "shotcanvas" | "probestream" | "readmedia" | "readassets" | "timelapse" | "convertimage" | "makethumbs" | "fetchurl" | "parsejson" | "parsehtml" | "callrest" | "callgraphql" | "opensocket" | "sendmessage" | "waitmessage" | "watchrequests" | "readheaders" | "capturebodies" | "subscribesse" | "longpoll" | "mapapi" | "extractapi" | "blockrequest" | "mockresponse" | "rewriteheaders" | "setcookies" | "readcookies" | "clearcookies" | "authflow" | "saveapikey" | "routeproxy" | "postform" | "postfiles" | "watchconsole" | "watcherrors" | "watchtasks" | "attachcdp" | "detachcdp" | "cdpcmd" | "watchcdp" | "setbreakpoint" | "stepcode" | "watchexpr" | "overridescript" | "measureflow" | "heapshot" | "trackmemory" | "profilecpu" | "watchshifts" | "traceload" | "annotatetrace" | "replaytrace" | "capturesourcemaps" | "emulatedevice" | "emulatenetwork" | "emulatelocate" | "setuseragent" | "overridepermission" | "blackboxscripts" | "persiststate" | "capturesession" | "restoresession" | "namedsessions" | "diffsessions" | "searchsessions" | "exportsessions" | "importsessions" | "composeworkflow" | "savetemplate" | "runworkflow" | "dryrun" | "delay" | "waitelement" | "compute" | "extractvars" | "listruns" | "condition" | "branch" | "loop" | "repeatuntil" | "whileloop" | "foreach" | "parallel" | "trycatch" | "visitrule" | "urlrule" | "menurule" | "keyrule" | "buttonrule" | "cronrule" | "intervalrule" | "urllistrule" | "webhookrule" | "eventrule";
4
4
  export type actionrisk = "read" | "interaction" | "sensitive";
5
5
  export type planstate = "draft" | "pending" | "approved" | "rejected" | "expired" | "completed" | "cancelled";
6
- export type auditkind = "configure" | "session" | "observe" | "proposal" | "approval" | "action" | "error" | "stop" | "pause" | "resume" | "complete" | "capability" | "tab" | "window" | "download" | "pointer" | "dialog" | "hold" | "retry" | "observation" | "watch" | "diff" | "navigation" | "redirect" | "auth" | "prefetch" | "rate" | "group" | "layout" | "discard" | "badge" | "fill" | "submit" | "consent" | "handoff" | "scrape" | "export" | "stream" | "provenance" | "resume" | "intercept" | "clipboard" | "quarantine" | "cleanup" | "capture" | "media" | "call" | "socket" | "replay" | "control" | "timeline" | "debugger" | "profile" | "emulation" | "workflow" | "trigger" | "protocol" | "tool" | "model" | "swarm" | "environment" | "worker" | "sandbox" | "grant" | "expiry" | "revoke" | "deny" | "seal" | "mask" | "vault" | "gate" | "phish" | "defer" | "schema" | "inbound" | "transparency" | "notes" | "scratchpad" | "summary" | "recall" | "correction" | "consentmemory" | "cancel" | "search";
6
+ export type auditkind = "configure" | "session" | "observe" | "proposal" | "approval" | "action" | "error" | "stop" | "pause" | "resume" | "complete" | "capability" | "tab" | "window" | "download" | "pointer" | "dialog" | "hold" | "retry" | "observation" | "watch" | "diff" | "navigation" | "redirect" | "auth" | "prefetch" | "rate" | "group" | "layout" | "discard" | "badge" | "fill" | "submit" | "consent" | "handoff" | "scrape" | "export" | "stream" | "provenance" | "resume" | "intercept" | "clipboard" | "quarantine" | "cleanup" | "capture" | "media" | "call" | "socket" | "replay" | "control" | "timeline" | "debugger" | "profile" | "emulation" | "workflow" | "trigger" | "protocol" | "tool" | "model" | "swarm" | "environment" | "worker" | "sandbox" | "grant" | "expiry" | "revoke" | "deny" | "seal" | "mask" | "vault" | "gate" | "phish" | "defer" | "schema" | "inbound" | "transparency" | "notes" | "scratchpad" | "summary" | "recall" | "correction" | "consentmemory" | "cancel" | "search" | "palette" | "surface" | "onboarding" | "logstream" | "datagrid" | "quickaction" | "shortcut" | "omnibox" | "notify" | "picker" | "shotpanel" | "compare" | "siteprofile" | "theme" | "locale" | "importexport" | "tour" | "a11y" | "pagechip" | "toast" | "recent" | "dropimport";
7
7
  /** Observation mode classes: passive capture, watched lifetimes and diffing passes. */
8
8
  export type observationmode = "passive" | "watching" | "diffing";
9
9
  export interface toolstep {
@@ -244,6 +244,28 @@ export interface runsettings {
244
244
  cancelrollback?: "queued" | "none";
245
245
  /** The runsummary length window in steps the distillation keeps; an absent window keeps every step with no fixed cap. */
246
246
  summarywindow?: number;
247
+ /** The commandpalette recent window: the number of most used commands the ranking lifts first; an absent window ranks by match alone. */
248
+ paletterecents?: number;
249
+ /** The logstream live buffer bound: the number of newest events the live window keeps while the full history stays in memory; an absent bound keeps every event live. */
250
+ logstreambuffer?: number;
251
+ /** Retention window for stored taskinput history entries; an absent window keeps every entry. */
252
+ taskinputretention?: number;
253
+ /** The commandpalette keyboard shortcut every surface opens, such as "ctrl+."; an absent value keeps the documented default binding the surfaces ship. */
254
+ paletteshortcut?: string;
255
+ /** The byte ceiling above which diffpreview generation offloads to the offscreen worker pool when the user granted the offscreen capability; an absent ceiling keeps every diff inline. */
256
+ diffpreviewbytes?: number;
257
+ /** The recenttray depth: the number of latest runs the popup tray keeps; an absent depth keeps every run. */
258
+ recenttraydepth?: number;
259
+ /** True when the user consents to notifications that carry page content; an absent value keeps every notification body content free so no consent is needed. */
260
+ notifyconsent?: boolean;
261
+ /** True when the user turns the done and attention notifications on; an absent value keeps them on with content free bodies only. */
262
+ notifyenabled?: boolean;
263
+ /** The manual darklight override: dark or light forces the theme while system follows the os preference; an absent value follows the os preference alone. */
264
+ themepreference?: "dark" | "light" | "system";
265
+ /** The language of the interface strings; an absent value keeps english with the locale fallback. */
266
+ uilanguage?: string;
267
+ /** The steteoast live count: the number of newest step toasts the live stack keeps while the full history stays queryable; an absent count keeps every toast live. */
268
+ toastlivecount?: number;
247
269
  }
248
270
  export interface proposalrequest {
249
271
  objective: string;
@@ -4321,7 +4343,7 @@ export interface sealedrunstate {
4321
4343
  /** The sensitive classes of the 1.1.61 family: payment, credential, delete and publish steps each need one fresh consent prompt per class per origin. */
4322
4344
  export type sensitiveclass = "payment" | "credential" | "delete" | "publish";
4323
4345
  /** The event kinds of the immutable run log: step transitions, grants, window expiries, revocations, denials, suspensions, resumes and the completion seal. */
4324
- export type logeventkind = "step" | "grant" | "expiry" | "revoke" | "deny" | "suspend" | "resume" | "seal" | "gate" | "phish" | "schema" | "inbound" | "cancel";
4346
+ export type logeventkind = "step" | "grant" | "expiry" | "revoke" | "deny" | "suspend" | "resume" | "seal" | "gate" | "phish" | "schema" | "inbound" | "cancel" | "review";
4325
4347
  /** The hash chain fields of one immutable log entry: the hash of its predecessor, the entry hash written at append time and the algorithm that derives both. */
4326
4348
  export interface loghash {
4327
4349
  previous: string;
@@ -4790,4 +4812,408 @@ export interface tabsessionref {
4790
4812
  origin: string;
4791
4813
  updatedat: number;
4792
4814
  }
4815
+ /**
4816
+ * Interface surface contracts of the 1.1.64 family.
4817
+ * The interface becomes a family of five surfaces here: the popup grows into a command surface, the sidepanel becomes the workspace with plan, run and review tabs, the dashboardpage opens a full page view in a new tab, the optionspage gathers every setting in one place and the onboarding walks a first run. The commandpalette registers entries from every module at startup, lists only the actions the current capability set allows and ranks fuzzy matches with the recent commands first; the taskinput submits natural language goals through the same proposal flow as the api with the active origin and page outline attached; plancards render one card per proposed step with kind, risk class, environment and options grouped by risk class with the sensitive classes expanded by default; stepapprove resolves one step per human action with approve, reject and edit provenance written into the immutable log; diffpreview compares the observed before state with the predicted after state of write class steps only with masked values carrying their mask verdicts; the stepstimeline derives its nodes from progress records with no new state; and the logstream renders live events with level, source and step ref while the single broadcast channel carries run state to every surface.
4818
+ * The consent gates do not move: every surface action rides the same policy gates, the command bus records each routing in the audit trail, and no interface surface ever bypasses the human review.
4819
+ */
4820
+ /** The interface surfaces of the 1.1.64 and 1.1.65 families: the popup command surface, the sidepanel workspace, the dashboardpage, the optionspage, the onboarding walkthrough, the omnibox entry point and the inline page surface of the pagechips. */
4821
+ export type uisurface = "popup" | "sidepanel" | "dashboardpage" | "optionspage" | "onboarding" | "omnibox" | "page";
4822
+ /** One commandpalette action: the command it routes, the surface it opens on, the optional permission it needs granted and whether it needs an active session. */
4823
+ export interface paletteaction {
4824
+ command: string;
4825
+ surface: uisurface;
4826
+ /** The optional capability the command needs granted before the palette lists it; an absent permission needs none. */
4827
+ permission?: string;
4828
+ /** True when the command needs an active browser session before the palette lists it. */
4829
+ session?: boolean;
4830
+ }
4831
+ /** One commandpalette entry: the id, the visible label, the keywords the fuzzy search matches and the action it routes through the command bus. */
4832
+ export interface paletteentry {
4833
+ id: string;
4834
+ label: string;
4835
+ keywords: string[];
4836
+ action: paletteaction;
4837
+ }
4838
+ /** One ranked commandpalette match: the entry, the fuzzy score and the plain language reason it ranked. */
4839
+ export interface palettematch {
4840
+ entry: paletteentry;
4841
+ score: number;
4842
+ reason: string;
4843
+ }
4844
+ /** One taskinput submission: the natural language goal, the page outline context, the active origin scope and the surface it came from. */
4845
+ export interface taskinputsubmission {
4846
+ id: string;
4847
+ text: string;
4848
+ context: string;
4849
+ origin: string;
4850
+ surface: uisurface;
4851
+ at: number;
4852
+ }
4853
+ /** The proposal status the taskinput shows while a plan generates: idle, generating, ready or failed. */
4854
+ export type proposalstatus = "idle" | "generating" | "ready" | "failed";
4855
+ /** One stepstimeline node derived from progress records with no new state: the status, the duration, the environment badge, the active mark, the deep link anchor and the step result summary. */
4856
+ export interface stepstimelinenode {
4857
+ stepid: string;
4858
+ kind: string;
4859
+ status: "pending" | "running" | "waiting" | "done" | "failed" | "halted";
4860
+ durationms?: number;
4861
+ environment?: environmentkind;
4862
+ active: boolean;
4863
+ anchor: string;
4864
+ resultsummary?: string;
4865
+ }
4866
+ /** One logstream event of a live run: the level, the source that emitted it, the origin, the summary in plain language, the optional step ref, the mask verdict of its source payload and the hash chain link written at append time. */
4867
+ export interface logstreamevent {
4868
+ id: string;
4869
+ level: loglevel;
4870
+ source: string;
4871
+ origin: string;
4872
+ summary: string;
4873
+ stepid?: string;
4874
+ masked: boolean;
4875
+ maskverdict: string;
4876
+ hash: loghash;
4877
+ at: number;
4878
+ }
4879
+ /** One logstream filter: the level, origin or step ref the live view keeps. */
4880
+ export interface logstreamfilter {
4881
+ level?: loglevel;
4882
+ origin?: string;
4883
+ stepid?: string;
4884
+ }
4885
+ /** One plancard of the plan review surface: the step id, the kind, the risk class, the execution environment, the reviewed options, the summary, the matching corrections from correctionmemory and the edit before approve offer. */
4886
+ export interface plancard {
4887
+ stepid: string;
4888
+ kind: string;
4889
+ risk: actionrisk;
4890
+ environment: environmentkind;
4891
+ options: string;
4892
+ summary: string;
4893
+ corrections: Array<{
4894
+ id: string;
4895
+ source: string;
4896
+ reason: string;
4897
+ }>;
4898
+ editable: boolean;
4899
+ }
4900
+ /** One plancard group of the plan review surface: the risk class of its cards and whether the group renders expanded; sensitive groups expand by default. */
4901
+ export interface plancardgroup {
4902
+ risk: actionrisk;
4903
+ cards: plancard[];
4904
+ expanded: boolean;
4905
+ }
4906
+ /** One stepapprove resolution: the step it resolves, the plan it belongs to, the origin it ran on, the approve, reject or edit decision, the surface the distinct human action came from and the edited step shape an edit carries. */
4907
+ export interface stepapproveresolution {
4908
+ stepid: string;
4909
+ planid: string;
4910
+ origin: string;
4911
+ resolution: "approve" | "reject" | "edit";
4912
+ surface: uisurface;
4913
+ edited?: string;
4914
+ at: number;
4915
+ }
4916
+ /** One diffpreview field change: the field name, the added, changed or removed class and the before and after values it carries. */
4917
+ export interface diffchange {
4918
+ field: string;
4919
+ kind: "added" | "changed" | "removed";
4920
+ before?: string;
4921
+ after?: string;
4922
+ }
4923
+ /** One diffpreview payload: the step it previews, the observed before state, the predicted after state, the field changes with added, changed and removed classes, the mask verdicts per field and the generation provenance. */
4924
+ export interface diffpreviewpayload {
4925
+ stepid: string;
4926
+ before: Record<string, string>;
4927
+ after: Record<string, string>;
4928
+ changes: diffchange[];
4929
+ /** The mask verdict reason per field; an absent field carries no masked value. */
4930
+ maskverdicts: Record<string, string>;
4931
+ provenance: "inline" | "offscreenworker";
4932
+ }
4933
+ /** One onboarding step: the surface it walks, the title, the body and the completion event name its finish records. */
4934
+ export interface onboardingstep {
4935
+ id: string;
4936
+ surface: uisurface;
4937
+ title: string;
4938
+ body: string;
4939
+ completion: string;
4940
+ }
4941
+ /** The onboarding state: the completed steps, the done mark, the single consent scoped event a full completion writes and the timestamps. */
4942
+ export interface onboardingstate {
4943
+ stepscompleted: string[];
4944
+ done: boolean;
4945
+ consentevent?: string;
4946
+ startedat?: number;
4947
+ completedat?: number;
4948
+ }
4949
+ /** One surface action of the command bus: the surface it came from, the command it routes and the optional step and payload it carries. */
4950
+ export interface surfaceaction {
4951
+ surface: uisurface;
4952
+ command: string;
4953
+ stepid?: string;
4954
+ payload?: string;
4955
+ }
4956
+ /** One command bus routing verdict: whether the action dispatched, the gate that decided and the plain language reason. */
4957
+ export interface surfaceroute {
4958
+ dispatched: boolean;
4959
+ gate: string;
4960
+ reason: string;
4961
+ }
4962
+ /** The broadcast channels of the single surface channel: run state, logstream events, session store updates and settings changes. */
4963
+ export type broadcastchannelkind = "runstate" | "logstream" | "sessions" | "settings";
4964
+ /** One broadcast frame of the single surface channel: the channel it rides, the emitting surface, the plain language summary and the time. */
4965
+ export interface broadcastframe {
4966
+ channel: broadcastchannelkind;
4967
+ surface: uisurface | "background";
4968
+ summary: string;
4969
+ at: number;
4970
+ }
4971
+ /** One per surface layout preference: the surface, the preference keys the user set and the update time; the preferences scope per profile workspace. */
4972
+ export interface surfacelayout {
4973
+ surface: uisurface;
4974
+ preferences: Record<string, string>;
4975
+ updatedat: number;
4976
+ }
4977
+ /** One commandpalette usage record: the command, its use count and the last use time the recent first ranking reads. */
4978
+ export interface paletteuserecord {
4979
+ command: string;
4980
+ count: number;
4981
+ lastusedat: number;
4982
+ }
4983
+ /**
4984
+ * Interface surface contracts of the 1.1.65 family, part two.
4985
+ * This family finishes the interface layer: the datagrid arranges extraction results into columns and rows with inferred types and the exportmenu ships them as csv, json or clipboard in masked form only; quickactions, shortcutkeys and the omniboxtask shorten the path to a run behind the same gates; the statusbadge, the done and attention notifications, the recenttray and the stetoasts keep the user informed without watching; the pickeroverlay, the targethalo, the guidedtips, the shotpanel, the compareviewer and the pagechips cover selection and evidence; and the siteprofiles, the darklight theme tokens, the locale bundles, the importexport payloads, the dropimport sessions, the featuretour stops and the a11ylabels round out the surface.
4986
+ * The consent gates do not move: every quickaction rides the origin allowlist of the clicked tab, every omnibox goal routes through the proposal flow, every notification with page content needs its consent, every picker read stays inside the granted origin, no bundle ever ships a secretvault value or an unmasked log, and no interface element ever bypasses the human review.
4987
+ */
4988
+ /** One datagrid column with its type inferred from the observed values: text, number, boolean, date or an all empty column. */
4989
+ export interface datagridcolumn {
4990
+ field: string;
4991
+ label: string;
4992
+ type: "text" | "number" | "boolean" | "date" | "empty";
4993
+ /** True when the type was inferred from the values rather than declared by the extraction. */
4994
+ inferred: boolean;
4995
+ }
4996
+ /** One datagrid row: its original order as index, its field values and its selected mark of a partial export range. */
4997
+ export interface datagridrow {
4998
+ index: number;
4999
+ values: Record<string, string>;
5000
+ /** True when the row sits inside the selected range of a partial export. */
5001
+ selected?: boolean;
5002
+ }
5003
+ /** One datagrid view of an extraction result: the title, the origin, the run, the inferred columns, the rows and the build time. */
5004
+ export interface datagridview {
5005
+ id: string;
5006
+ title: string;
5007
+ origin: string;
5008
+ runid: string;
5009
+ columns: datagridcolumn[];
5010
+ rows: datagridrow[];
5011
+ at: number;
5012
+ }
5013
+ /** One exportmenu descriptor: the csv, json or clipboard format, the selection, step or run scope and the download, clipboard or memory destination. */
5014
+ export interface exportmenudescriptor {
5015
+ format: "csv" | "json" | "clipboard";
5016
+ scope: "selection" | "step" | "run";
5017
+ destination: "download" | "clipboard" | "memory";
5018
+ }
5019
+ /** One quickaction bound to a context menu entry: the command it routes, the surface it opens on, the optional permission it needs granted and whether it needs an active session. */
5020
+ export interface quickaction {
5021
+ id: string;
5022
+ label: string;
5023
+ command: string;
5024
+ surface: uisurface;
5025
+ /** The optional capability the quickaction needs granted before it registers; an absent permission needs none. */
5026
+ permission?: string;
5027
+ /** True when the quickaction needs an active browser session before it registers. */
5028
+ session?: boolean;
5029
+ }
5030
+ /** One shortcutkeys binding: the command it triggers, the key, the modifiers, the user editable mark and the surface it binds on; the palette command binds on every surface. */
5031
+ export interface shortcutbinding {
5032
+ command: string;
5033
+ key: string;
5034
+ modifiers: string[];
5035
+ editable: boolean;
5036
+ surface: uisurface;
5037
+ }
5038
+ /** One omniboxtask submission parsed from the omnibox keyword: the natural language goal after the keyword, the active origin and the time. */
5039
+ export interface omniboxtasksubmission {
5040
+ id: string;
5041
+ text: string;
5042
+ origin: string;
5043
+ surface: "omnibox";
5044
+ at: number;
5045
+ }
5046
+ /** One statusbadge state of the toolbar icon: idle, running, waiting or attention with the count of waiting gates that need a human. */
5047
+ export interface statusbadgestate {
5048
+ state: "idle" | "running" | "waiting" | "attention";
5049
+ waitingcount: number;
5050
+ runid?: string;
5051
+ }
5052
+ /** One notification payload: the done or attention kind, the title, the body, the deep link, the optional step ref and whether the body carries page content that needs its consent. */
5053
+ export interface notificationpayload {
5054
+ id: string;
5055
+ kind: "done" | "attention";
5056
+ title: string;
5057
+ body: string;
5058
+ deeplink: string;
5059
+ runid?: string;
5060
+ stepid?: string;
5061
+ /** True when the notification body carries page content; the content consent gate must allow before it shows. */
5062
+ content: boolean;
5063
+ at: number;
5064
+ }
5065
+ /** One recenttray entry: the run id, the origin, the outcome, the title, the time and the resume and reopen offers. */
5066
+ export interface recenttrayentry {
5067
+ runid: string;
5068
+ origin: string;
5069
+ outcome: "running" | "completed" | "halted" | "failed";
5070
+ title: string;
5071
+ at: number;
5072
+ resumable: boolean;
5073
+ reopenable: boolean;
5074
+ }
5075
+ /** One pickeroverlay candidate: the selector, the optional text and role anchors, the stability score and the plain language reason the score stands. */
5076
+ export interface pickercandidate {
5077
+ selector: string;
5078
+ text?: string;
5079
+ role?: string;
5080
+ stabilityscore: number;
5081
+ reason: string;
5082
+ }
5083
+ /** One pickeroverlay session: the granted origin it reads, the ranked candidates, the locked step and selector and the start time. */
5084
+ export interface pickersession {
5085
+ id: string;
5086
+ origin: string;
5087
+ candidates: pickercandidate[];
5088
+ /** The step the locked candidate binds to; one session locks one candidate. */
5089
+ lockedstepid?: string;
5090
+ lockedselector?: string;
5091
+ startedat: number;
5092
+ }
5093
+ /** One targethalo geometry descriptor: the step it outlines, the target selector, the pixel rect and the step state that colors the outline. */
5094
+ export interface targethalo {
5095
+ stepid: string;
5096
+ selector: string;
5097
+ rect: {
5098
+ x: number;
5099
+ y: number;
5100
+ width: number;
5101
+ height: number;
5102
+ };
5103
+ state: "pending" | "running" | "waiting" | "done" | "failed" | "halted";
5104
+ }
5105
+ /** One guidedtip: the surface it teaches, the title, the body and the picker step it binds to. */
5106
+ export interface guidedtip {
5107
+ id: string;
5108
+ surface: uisurface;
5109
+ title: string;
5110
+ body: string;
5111
+ pickerstep?: string;
5112
+ }
5113
+ /** One shotpanel view: the step, the run, the capture id, the capture provenance, the origin, the redaction verdicts, the zoom and pan the user set and the build time. */
5114
+ export interface shotpanelview {
5115
+ id: string;
5116
+ stepid: string;
5117
+ runid: string;
5118
+ captureid: string;
5119
+ provenance: "viewport" | "fullpage" | "element" | "region";
5120
+ origin: string;
5121
+ redactions: Array<{
5122
+ region: string;
5123
+ verdict: string;
5124
+ }>;
5125
+ zoom: number;
5126
+ pan: {
5127
+ x: number;
5128
+ y: number;
5129
+ };
5130
+ at: number;
5131
+ }
5132
+ /** One compareviewer pair: the step it compares, the before capture, the after capture and the slider position of the overlay. */
5133
+ export interface compareviewerpair {
5134
+ id: string;
5135
+ stepid: string;
5136
+ beforecaptureid: string;
5137
+ aftercaptureid: string;
5138
+ slidervalue: number;
5139
+ }
5140
+ /** One siteprofile: the per site interface preferences (the theme, the shortcutkeys and the default view) stored beside the originprofiles policy preferences of its origin. */
5141
+ export interface siteprofile {
5142
+ origin: string;
5143
+ theme?: "dark" | "light" | "system";
5144
+ shortcuts?: shortcutbinding[];
5145
+ defaultview?: string;
5146
+ updatedat: number;
5147
+ }
5148
+ /** One darklight theme token set: the mode and the token values every surface, including the dashboardpage, reads; the source names whether the os preference, the user override or the siteprofile decided. */
5149
+ export interface darklighttokens {
5150
+ mode: "dark" | "light";
5151
+ tokens: Record<string, string>;
5152
+ source?: "os" | "user" | "site";
5153
+ }
5154
+ /** One locale bundle: the language and its interface strings; english ships as the fallback base. */
5155
+ export interface localebundle {
5156
+ language: string;
5157
+ strings: Record<string, string>;
5158
+ }
5159
+ /** One importexport payload: the settings and data bundle of one profile with its originprofiles, siteprofiles, notes and preferences and the honest exclusion list; secretvault values and unmasked logs never enter any bundle under any flag. */
5160
+ export interface importexportpayload {
5161
+ version: number;
5162
+ kind: "settings" | "data";
5163
+ profile: string;
5164
+ exportedat: number;
5165
+ contents: {
5166
+ originprofiles: Array<Record<string, unknown>>;
5167
+ siteprofiles: Array<Record<string, unknown>>;
5168
+ notes: Array<Record<string, unknown>>;
5169
+ preferences: Record<string, unknown>;
5170
+ /** Present only when a bundle wrongly carries log entries; the validation refuses such bundles in full. */
5171
+ unmaskedlogs?: Array<Record<string, unknown>>;
5172
+ };
5173
+ exclusions: string[];
5174
+ }
5175
+ /** One dropimport session: the dropped filename, the detected csv, json or workflow kind, the byte size, the accepted mark and the time. */
5176
+ export interface dropimportsession {
5177
+ id: string;
5178
+ filename: string;
5179
+ kind: "csv" | "json" | "workflow";
5180
+ bytes: number;
5181
+ accepted: boolean;
5182
+ at: number;
5183
+ }
5184
+ /** One featuretour stop: the surface it walks, the focus selector it highlights, the title, the body and the stop order. */
5185
+ export interface featuretourstop {
5186
+ id: string;
5187
+ surface: uisurface;
5188
+ focus: string;
5189
+ title: string;
5190
+ body: string;
5191
+ order: number;
5192
+ }
5193
+ /** One a11ylabel: the control it names, its role, its accessible name and its optional state and value for screen readers, resolved through the locale bundles so labels follow the language of the interface. */
5194
+ export interface a11ylabel {
5195
+ control: string;
5196
+ role: "button" | "textbox" | "tab" | "table" | "list" | "slider" | "switch" | "radiogroup" | "combobox" | "group" | "region" | "search" | "dialog";
5197
+ name: string;
5198
+ state?: string;
5199
+ value?: string;
5200
+ }
5201
+ /** One pagechip confirmation: the gated step, the anchor selector, the origin, the approve or reject resolution, the resolved time and the build time. */
5202
+ export interface pagechipconfirmation {
5203
+ id: string;
5204
+ stepid: string;
5205
+ selector: string;
5206
+ origin: string;
5207
+ resolution?: "approve" | "reject";
5208
+ resolvedat?: number;
5209
+ at: number;
5210
+ }
5211
+ /** One steteoast: the step completion confirmation with the step kind, its duration in milliseconds and the time. */
5212
+ export interface stetoast {
5213
+ id: string;
5214
+ stepid: string;
5215
+ kind: string;
5216
+ durationms: number;
5217
+ at: number;
5218
+ }
4793
5219
  //# sourceMappingURL=types.d.ts.map