blob: 281a94fc4ef4dbed5e1fdb3b66205e17bbeecc0c [file] [log] [blame]
// Copyright 2018 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file was generated by:
// tools/json_schema_compiler/compiler.py.
// NOTE: The format of types has changed. 'FooType' is now
// 'chrome.automation.FooType'.
// Please run the closure compiler before committing changes.
// See https://chromium.googlesource.com/chromium/src/+/master/docs/closure_compilation.md
/** @fileoverview Externs generated from namespace: automation */
/**
* @const
*/
chrome.automation = {};
/**
* @enum {string}
* @see https://developer.chrome.com/extensions/automation#type-EventType
*/
chrome.automation.EventType = {
ACTIVEDESCENDANTCHANGED: 'activedescendantchanged',
ALERT: 'alert',
ARIA_ATTRIBUTE_CHANGED: 'ariaAttributeChanged',
AUTOCORRECTION_OCCURED: 'autocorrectionOccured',
BLUR: 'blur',
CHECKED_STATE_CHANGED: 'checkedStateChanged',
CHILDREN_CHANGED: 'childrenChanged',
CLICKED: 'clicked',
DOCUMENT_SELECTION_CHANGED: 'documentSelectionChanged',
EXPANDED_CHANGED: 'expandedChanged',
FOCUS: 'focus',
FOCUS_CONTEXT: 'focusContext',
IMAGE_FRAME_UPDATED: 'imageFrameUpdated',
HIDE: 'hide',
HIT_TEST_RESULT: 'hitTestResult',
HOVER: 'hover',
INVALID_STATUS_CHANGED: 'invalidStatusChanged',
LAYOUT_COMPLETE: 'layoutComplete',
LIVE_REGION_CREATED: 'liveRegionCreated',
LIVE_REGION_CHANGED: 'liveRegionChanged',
LOAD_COMPLETE: 'loadComplete',
LOCATION_CHANGED: 'locationChanged',
MEDIA_STARTED_PLAYING: 'mediaStartedPlaying',
MEDIA_STOPPED_PLAYING: 'mediaStoppedPlaying',
MENU_END: 'menuEnd',
MENU_LIST_ITEM_SELECTED: 'menuListItemSelected',
MENU_LIST_VALUE_CHANGED: 'menuListValueChanged',
MENU_POPUP_END: 'menuPopupEnd',
MENU_POPUP_START: 'menuPopupStart',
MENU_START: 'menuStart',
MOUSE_CANCELED: 'mouseCanceled',
MOUSE_DRAGGED: 'mouseDragged',
MOUSE_MOVED: 'mouseMoved',
MOUSE_PRESSED: 'mousePressed',
MOUSE_RELEASED: 'mouseReleased',
ROW_COLLAPSED: 'rowCollapsed',
ROW_COUNT_CHANGED: 'rowCountChanged',
ROW_EXPANDED: 'rowExpanded',
SCROLL_POSITION_CHANGED: 'scrollPositionChanged',
SCROLLED_TO_ANCHOR: 'scrolledToAnchor',
SELECTED_CHILDREN_CHANGED: 'selectedChildrenChanged',
SELECTION: 'selection',
SELECTION_ADD: 'selectionAdd',
SELECTION_REMOVE: 'selectionRemove',
SHOW: 'show',
STATE_CHANGED: 'stateChanged',
TEXT_CHANGED: 'textChanged',
TEXT_SELECTION_CHANGED: 'textSelectionChanged',
TREE_CHANGED: 'treeChanged',
VALUE_CHANGED: 'valueChanged',
};
/**
* @enum {string}
* @see https://developer.chrome.com/extensions/automation#type-RoleType
*/
chrome.automation.RoleType = {
ABBR: 'abbr',
ALERT: 'alert',
ALERT_DIALOG: 'alertDialog',
ANCHOR: 'anchor',
ANNOTATION: 'annotation',
APPLICATION: 'application',
ARTICLE: 'article',
AUDIO: 'audio',
BANNER: 'banner',
BLOCKQUOTE: 'blockquote',
BUTTON: 'button',
CANVAS: 'canvas',
CAPTION: 'caption',
CARET: 'caret',
CELL: 'cell',
CHECK_BOX: 'checkBox',
CLIENT: 'client',
COLOR_WELL: 'colorWell',
COLUMN: 'column',
COLUMN_HEADER: 'columnHeader',
COMBO_BOX_GROUPING: 'comboBoxGrouping',
COMBO_BOX_MENU_BUTTON: 'comboBoxMenuButton',
COMPLEMENTARY: 'complementary',
CONTENT_DELETION: 'contentDeletion',
CONTENT_INSERTION: 'contentInsertion',
CONTENT_INFO: 'contentInfo',
DATE: 'date',
DATE_TIME: 'dateTime',
DEFINITION: 'definition',
DESCRIPTION_LIST: 'descriptionList',
DESCRIPTION_LIST_DETAIL: 'descriptionListDetail',
DESCRIPTION_LIST_TERM: 'descriptionListTerm',
DESKTOP: 'desktop',
DETAILS: 'details',
DIALOG: 'dialog',
DIRECTORY: 'directory',
DISCLOSURE_TRIANGLE: 'disclosureTriangle',
DOC_ABSTRACT: 'docAbstract',
DOC_ACKNOWLEDGMENTS: 'docAcknowledgments',
DOC_AFTERWORD: 'docAfterword',
DOC_APPENDIX: 'docAppendix',
DOC_BACK_LINK: 'docBackLink',
DOC_BIBLIO_ENTRY: 'docBiblioEntry',
DOC_BIBLIOGRAPHY: 'docBibliography',
DOC_BIBLIO_REF: 'docBiblioRef',
DOC_CHAPTER: 'docChapter',
DOC_COLOPHON: 'docColophon',
DOC_CONCLUSION: 'docConclusion',
DOC_COVER: 'docCover',
DOC_CREDIT: 'docCredit',
DOC_CREDITS: 'docCredits',
DOC_DEDICATION: 'docDedication',
DOC_ENDNOTE: 'docEndnote',
DOC_ENDNOTES: 'docEndnotes',
DOC_EPIGRAPH: 'docEpigraph',
DOC_EPILOGUE: 'docEpilogue',
DOC_ERRATA: 'docErrata',
DOC_EXAMPLE: 'docExample',
DOC_FOOTNOTE: 'docFootnote',
DOC_FOREWORD: 'docForeword',
DOC_GLOSSARY: 'docGlossary',
DOC_GLOSS_REF: 'docGlossRef',
DOC_INDEX: 'docIndex',
DOC_INTRODUCTION: 'docIntroduction',
DOC_NOTE_REF: 'docNoteRef',
DOC_NOTICE: 'docNotice',
DOC_PAGE_BREAK: 'docPageBreak',
DOC_PAGE_LIST: 'docPageList',
DOC_PART: 'docPart',
DOC_PREFACE: 'docPreface',
DOC_PROLOGUE: 'docPrologue',
DOC_PULLQUOTE: 'docPullquote',
DOC_QNA: 'docQna',
DOC_SUBTITLE: 'docSubtitle',
DOC_TIP: 'docTip',
DOC_TOC: 'docToc',
DOCUMENT: 'document',
EMBEDDED_OBJECT: 'embeddedObject',
FEED: 'feed',
FIGCAPTION: 'figcaption',
FIGURE: 'figure',
FOOTER: 'footer',
FORM: 'form',
GENERIC_CONTAINER: 'genericContainer',
GRAPHICS_DOCUMENT: 'graphicsDocument',
GRAPHICS_OBJECT: 'graphicsObject',
GRAPHICS_SYMBOL: 'graphicsSymbol',
GRID: 'grid',
GROUP: 'group',
HEADING: 'heading',
IFRAME: 'iframe',
IFRAME_PRESENTATIONAL: 'iframePresentational',
IGNORED: 'ignored',
IMAGE: 'image',
IMAGE_MAP: 'imageMap',
INLINE_TEXT_BOX: 'inlineTextBox',
INPUT_TIME: 'inputTime',
LABEL_TEXT: 'labelText',
LAYOUT_TABLE: 'layoutTable',
LAYOUT_TABLE_CELL: 'layoutTableCell',
LAYOUT_TABLE_COLUMN: 'layoutTableColumn',
LAYOUT_TABLE_ROW: 'layoutTableRow',
LEGEND: 'legend',
LINE_BREAK: 'lineBreak',
LINK: 'link',
LIST: 'list',
LIST_BOX: 'listBox',
LIST_BOX_OPTION: 'listBoxOption',
LIST_ITEM: 'listItem',
LIST_MARKER: 'listMarker',
LOCATION_BAR: 'locationBar',
LOG: 'log',
MAIN: 'main',
MARK: 'mark',
MARQUEE: 'marquee',
MATH: 'math',
MENU: 'menu',
MENU_BAR: 'menuBar',
MENU_BUTTON: 'menuButton',
MENU_ITEM: 'menuItem',
MENU_ITEM_CHECK_BOX: 'menuItemCheckBox',
MENU_ITEM_RADIO: 'menuItemRadio',
MENU_LIST_OPTION: 'menuListOption',
MENU_LIST_POPUP: 'menuListPopup',
METER: 'meter',
NAVIGATION: 'navigation',
NOTE: 'note',
PANE: 'pane',
PARAGRAPH: 'paragraph',
POP_UP_BUTTON: 'popUpButton',
PRE: 'pre',
PRESENTATIONAL: 'presentational',
PROGRESS_INDICATOR: 'progressIndicator',
RADIO_BUTTON: 'radioButton',
RADIO_GROUP: 'radioGroup',
REGION: 'region',
ROOT_WEB_AREA: 'rootWebArea',
ROW: 'row',
ROW_HEADER: 'rowHeader',
RUBY: 'ruby',
SCROLL_BAR: 'scrollBar',
SCROLL_VIEW: 'scrollView',
SEARCH: 'search',
SEARCH_BOX: 'searchBox',
SLIDER: 'slider',
SLIDER_THUMB: 'sliderThumb',
SPIN_BUTTON: 'spinButton',
SPLITTER: 'splitter',
STATIC_TEXT: 'staticText',
STATUS: 'status',
SVG_ROOT: 'svgRoot',
SWITCH: 'switch',
TAB: 'tab',
TAB_LIST: 'tabList',
TAB_PANEL: 'tabPanel',
TABLE: 'table',
TABLE_HEADER_CONTAINER: 'tableHeaderContainer',
TERM: 'term',
TEXT_FIELD: 'textField',
TEXT_FIELD_WITH_COMBO_BOX: 'textFieldWithComboBox',
TIME: 'time',
TIMER: 'timer',
TITLE_BAR: 'titleBar',
TOGGLE_BUTTON: 'toggleButton',
TOOLBAR: 'toolbar',
TOOLTIP: 'tooltip',
TREE: 'tree',
TREE_GRID: 'treeGrid',
TREE_ITEM: 'treeItem',
UNKNOWN: 'unknown',
VIDEO: 'video',
WEB_AREA: 'webArea',
WEB_VIEW: 'webView',
WINDOW: 'window',
};
/**
* @enum {string}
* @see https://developer.chrome.com/extensions/automation#type-StateType
*/
chrome.automation.StateType = {
COLLAPSED: 'collapsed',
DEFAULT: 'default',
EDITABLE: 'editable',
EXPANDED: 'expanded',
FOCUSABLE: 'focusable',
FOCUSED: 'focused',
HORIZONTAL: 'horizontal',
HOVERED: 'hovered',
IGNORED: 'ignored',
INVISIBLE: 'invisible',
LINKED: 'linked',
MULTILINE: 'multiline',
MULTISELECTABLE: 'multiselectable',
OFFSCREEN: 'offscreen',
PROTECTED: 'protected',
REQUIRED: 'required',
RICHLY_EDITABLE: 'richlyEditable',
VERTICAL: 'vertical',
VISITED: 'visited',
};
/**
* @enum {string}
* @see https://developer.chrome.com/extensions/automation#type-ActionType
*/
chrome.automation.ActionType = {
BLUR: 'blur',
CLEAR_ACCESSIBILITY_FOCUS: 'clearAccessibilityFocus',
CUSTOM_ACTION: 'customAction',
DECREMENT: 'decrement',
DO_DEFAULT: 'doDefault',
FOCUS: 'focus',
GET_IMAGE_DATA: 'getImageData',
HIT_TEST: 'hitTest',
INCREMENT: 'increment',
LOAD_INLINE_TEXT_BOXES: 'loadInlineTextBoxes',
REPLACE_SELECTED_TEXT: 'replaceSelectedText',
SCROLL_BACKWARD: 'scrollBackward',
SCROLL_DOWN: 'scrollDown',
SCROLL_FORWARD: 'scrollForward',
SCROLL_LEFT: 'scrollLeft',
SCROLL_RIGHT: 'scrollRight',
SCROLL_TO_MAKE_VISIBLE: 'scrollToMakeVisible',
SCROLL_TO_POINT: 'scrollToPoint',
SCROLL_UP: 'scrollUp',
SET_ACCESSIBILITY_FOCUS: 'setAccessibilityFocus',
SET_SCROLL_OFFSET: 'setScrollOffset',
SET_SELECTION: 'setSelection',
SET_SEQUENTIAL_FOCUS_NAVIGATION_STARTING_POINT: 'setSequentialFocusNavigationStartingPoint',
SET_VALUE: 'setValue',
SHOW_CONTEXT_MENU: 'showContextMenu',
};
/**
* @enum {string}
* @see https://developer.chrome.com/extensions/automation#type-TreeChangeType
*/
chrome.automation.TreeChangeType = {
NODE_CREATED: 'nodeCreated',
SUBTREE_CREATED: 'subtreeCreated',
NODE_CHANGED: 'nodeChanged',
TEXT_CHANGED: 'textChanged',
NODE_REMOVED: 'nodeRemoved',
SUBTREE_UPDATE_END: 'subtreeUpdateEnd',
};
/**
* @enum {string}
* @see https://developer.chrome.com/extensions/automation#type-NameFromType
*/
chrome.automation.NameFromType = {
UNINITIALIZED: 'uninitialized',
ATTRIBUTE: 'attribute',
ATTRIBUTE_EXPLICITLY_EMPTY: 'attributeExplicitlyEmpty',
CONTENTS: 'contents',
PLACEHOLDER: 'placeholder',
RELATED_ELEMENT: 'relatedElement',
VALUE: 'value',
};
/**
* @enum {string}
* @see https://developer.chrome.com/extensions/automation#type-Restriction
*/
chrome.automation.Restriction = {
DISABLED: 'disabled',
READ_ONLY: 'readOnly',
};
/**
* @enum {string}
* @see https://developer.chrome.com/extensions/automation#type-HasPopup
*/
chrome.automation.HasPopup = {
TRUE: 'true',
MENU: 'menu',
LISTBOX: 'listbox',
TREE: 'tree',
GRID: 'grid',
DIALOG: 'dialog',
};
/**
* @enum {string}
* @see https://developer.chrome.com/extensions/automation#type-DefaultActionVerb
*/
chrome.automation.DefaultActionVerb = {
ACTIVATE: 'activate',
CHECK: 'check',
CLICK: 'click',
CLICK_ANCESTOR: 'clickAncestor',
JUMP: 'jump',
OPEN: 'open',
PRESS: 'press',
SELECT: 'select',
UNCHECK: 'uncheck',
};
/**
* @typedef {{
* left: number,
* top: number,
* width: number,
* height: number
* }}
* @see https://developer.chrome.com/extensions/automation#type-Rect
*/
chrome.automation.Rect;
/**
* @typedef {{
* role: (!chrome.automation.RoleType|undefined),
* state: (Object|undefined),
* attributes: (Object|undefined)
* }}
* @see https://developer.chrome.com/extensions/automation#type-FindParams
*/
chrome.automation.FindParams;
/**
* @typedef {{
* anchorObject: Object,
* anchorOffset: number,
* focusObject: Object,
* focusOffset: number
* }}
* @see https://developer.chrome.com/extensions/automation#type-SetDocumentSelectionParams
*/
chrome.automation.SetDocumentSelectionParams;
/**
* @constructor
* @private
* @see https://developer.chrome.com/extensions/automation#type-AutomationEvent
*/
chrome.automation.AutomationEvent = function() {};
/**
* The $(ref:automation.AutomationNode) to which the event was targeted.
* @type {!chrome.automation.AutomationNode}
* @see https://developer.chrome.com/extensions/automation#type-target
*/
chrome.automation.AutomationEvent.prototype.target;
/**
* The type of the event.
* @type {!chrome.automation.EventType}
* @see https://developer.chrome.com/extensions/automation#type-type
*/
chrome.automation.AutomationEvent.prototype.type;
/**
* The source of this event.
* @type {string}
* @see https://developer.chrome.com/extensions/automation#type-eventFrom
*/
chrome.automation.AutomationEvent.prototype.eventFrom;
/**
* @type {number}
* @see https://developer.chrome.com/extensions/automation#type-mouseX
*/
chrome.automation.AutomationEvent.prototype.mouseX;
/**
* @type {number}
* @see https://developer.chrome.com/extensions/automation#type-mouseY
*/
chrome.automation.AutomationEvent.prototype.mouseY;
/**
* Stops this event from further processing except for any remaining listeners
* on $(ref:AutomationEvent.target).
* @see https://developer.chrome.com/extensions/automation#method-stopPropagation
*/
chrome.automation.AutomationEvent.prototype.stopPropagation = function() {};
/**
* @typedef {{
* target: !chrome.automation.AutomationNode,
* type: !chrome.automation.TreeChangeType
* }}
* @see https://developer.chrome.com/extensions/automation#type-TreeChange
*/
chrome.automation.TreeChange;
/**
* @enum {string}
* @see https://developer.chrome.com/extensions/automation#type-TreeChangeObserverFilter
*/
chrome.automation.TreeChangeObserverFilter = {
NO_TREE_CHANGES: 'noTreeChanges',
LIVE_REGION_TREE_CHANGES: 'liveRegionTreeChanges',
TEXT_MARKER_CHANGES: 'textMarkerChanges',
ALL_TREE_CHANGES: 'allTreeChanges',
};
/**
* @typedef {{
* id: number,
* description: string
* }}
* @see https://developer.chrome.com/extensions/automation#type-CustomAction
*/
chrome.automation.CustomAction;
/**
* @constructor
* @private
* @see https://developer.chrome.com/extensions/automation#type-AutomationNode
*/
chrome.automation.AutomationNode = function() {};
/**
* The root node of the tree containing this AutomationNode.
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-root
*/
chrome.automation.AutomationNode.prototype.root;
/**
* Whether this AutomationNode is a root node.
* @type {boolean}
* @see https://developer.chrome.com/extensions/automation#type-isRootNode
*/
chrome.automation.AutomationNode.prototype.isRootNode;
/**
* The role of this node.
* @type {(!chrome.automation.RoleType|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-role
*/
chrome.automation.AutomationNode.prototype.role;
/**
* The $(ref:automation.StateType)s describing this node.
* @type {Object<chrome.automation.StateType, boolean>}
* @see https://developer.chrome.com/extensions/automation#type-state
*/
chrome.automation.AutomationNode.prototype.state;
/**
* The rendered location (as a bounding box) of this node in global screen coordinates.
* @type {(!chrome.automation.Rect|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-location
*/
chrome.automation.AutomationNode.prototype.location;
/**
* Computes the bounding box of a subrange of this node in global screen
* coordinates. Returns the same as |location| if range information is not
* available. The start and end indices are zero-based offsets into the node's
* "name" string attribute.
* @param {number} startIndex
* @param {number} endIndex
* @return {!chrome.automation.Rect}
* @see https://developer.chrome.com/extensions/automation#method-boundsForRange
*/
chrome.automation.AutomationNode.prototype.boundsForRange = function(startIndex, endIndex) {};
/**
* The location (as a bounding box) of this node in global screen coordinates without applying any clipping from ancestors.
* @type {(!chrome.automation.Rect|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-unclippedLocation
*/
chrome.automation.AutomationNode.prototype.unclippedLocation;
/**
* The purpose of the node, other than the role, if any.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-description
*/
chrome.automation.AutomationNode.prototype.description;
/**
* The placeholder for this text field, if any.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-placeholder
*/
chrome.automation.AutomationNode.prototype.placeholder;
/**
* The role description for this node.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-roleDescription
*/
chrome.automation.AutomationNode.prototype.roleDescription;
/**
* The accessible name for this node, via the <a href="http://www.w3.org/TR/wai-aria/roles#namecalculation"> Accessible Name Calculation</a> process.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-name
*/
chrome.automation.AutomationNode.prototype.name;
/**
* The source of the name.
* @type {(!chrome.automation.NameFromType|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-nameFrom
*/
chrome.automation.AutomationNode.prototype.nameFrom;
/**
* The value for this node: for example the <code>value</code> attribute of an <code>&lt;input&gt; element.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-value
*/
chrome.automation.AutomationNode.prototype.value;
/**
* The HTML tag for this element, if this node is an HTML element.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-htmlTag
*/
chrome.automation.AutomationNode.prototype.htmlTag;
/**
* The level of a heading or tree item.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-hierarchicalLevel
*/
chrome.automation.AutomationNode.prototype.hierarchicalLevel;
/**
* The start and end index of each word in an inline text box.
* @type {(!Array<number>|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-wordStarts
*/
chrome.automation.AutomationNode.prototype.wordStarts;
/**
* @type {(!Array<number>|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-wordEnds
*/
chrome.automation.AutomationNode.prototype.wordEnds;
/**
* The nodes, if any, which this node is specified to control via <a href="http://www.w3.org/TR/wai-aria/states_and_properties#aria-controls"> <code>aria-controls</code></a>.
* @type {(!Array<!chrome.automation.AutomationNode>|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-controls
*/
chrome.automation.AutomationNode.prototype.controls;
/**
* The nodes, if any, which form a description for this node.
* @type {(!Array<!chrome.automation.AutomationNode>|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-describedBy
*/
chrome.automation.AutomationNode.prototype.describedBy;
/**
* The nodes, if any, which may optionally be navigated to after this one. See <a href="http://www.w3.org/TR/wai-aria/states_and_properties#aria-flowto"> <code>aria-flowto</code></a>.
* @type {(!Array<!chrome.automation.AutomationNode>|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-flowTo
*/
chrome.automation.AutomationNode.prototype.flowTo;
/**
* The nodes, if any, which form a label for this element. Generally, the text from these elements will also be exposed as the element's accessible name, via the $(ref:automation.AutomationNode.name) attribute.
* @type {(!Array<!chrome.automation.AutomationNode>|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-labelledBy
*/
chrome.automation.AutomationNode.prototype.labelledBy;
/**
* The node referred to by <code>aria-activedescendant</code>, where applicable
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-activeDescendant
*/
chrome.automation.AutomationNode.prototype.activeDescendant;
/**
* The target of an in-page link.
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-inPageLinkTarget
*/
chrome.automation.AutomationNode.prototype.inPageLinkTarget;
/**
* A node that provides more details about the current node.
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-details
*/
chrome.automation.AutomationNode.prototype.details;
/**
* A node that provides an error message for a current node.
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-errorMessage
*/
chrome.automation.AutomationNode.prototype.errorMessage;
/**
* Reverse relationship for details.
* @type {(!Array<!chrome.automation.AutomationNode>|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-detailsFor
*/
chrome.automation.AutomationNode.prototype.detailsFor;
/**
* Reverse relationship for errorMessage.
* @type {(!Array<!chrome.automation.AutomationNode>|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-errorMessageFor
*/
chrome.automation.AutomationNode.prototype.errorMessageFor;
/**
* Reverse relationship for controls.
* @type {(!Array<!chrome.automation.AutomationNode>|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-controlledBy
*/
chrome.automation.AutomationNode.prototype.controlledBy;
/**
* Reverse relationship for describedBy.
* @type {(!Array<!chrome.automation.AutomationNode>|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-descriptionFor
*/
chrome.automation.AutomationNode.prototype.descriptionFor;
/**
* Reverse relationship for flowTo.
* @type {(!Array<!chrome.automation.AutomationNode>|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-flowFrom
*/
chrome.automation.AutomationNode.prototype.flowFrom;
/**
* Reverse relationship for labelledBy.
* @type {(!Array<!chrome.automation.AutomationNode>|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-labelFor
*/
chrome.automation.AutomationNode.prototype.labelFor;
/**
* An array of standard actions available on this node.
* @type {(!Array<!chrome.automation.ActionType>|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-standardActions
*/
chrome.automation.AutomationNode.prototype.standardActions;
/**
* An array of custom actions.
* @type {(!Array<!chrome.automation.CustomAction>|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-customActions
*/
chrome.automation.AutomationNode.prototype.customActions;
/**
* The action taken by calling <code>doDefault</code>.
* @type {(!chrome.automation.DefaultActionVerb|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-defaultActionVerb
*/
chrome.automation.AutomationNode.prototype.defaultActionVerb;
/**
* The URL that this link will navigate to.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-url
*/
chrome.automation.AutomationNode.prototype.url;
/**
* The URL of this document.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-docUrl
*/
chrome.automation.AutomationNode.prototype.docUrl;
/**
* The title of this document.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-docTitle
*/
chrome.automation.AutomationNode.prototype.docTitle;
/**
* Whether this document has finished loading.
* @type {(boolean|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-docLoaded
*/
chrome.automation.AutomationNode.prototype.docLoaded;
/**
* The proportion (out of 1.0) that this doc has completed loading.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-docLoadingProgress
*/
chrome.automation.AutomationNode.prototype.docLoadingProgress;
/**
* Scrollable container attributes.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-scrollX
*/
chrome.automation.AutomationNode.prototype.scrollX;
/**
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-scrollXMin
*/
chrome.automation.AutomationNode.prototype.scrollXMin;
/**
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-scrollXMax
*/
chrome.automation.AutomationNode.prototype.scrollXMax;
/**
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-scrollY
*/
chrome.automation.AutomationNode.prototype.scrollY;
/**
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-scrollYMin
*/
chrome.automation.AutomationNode.prototype.scrollYMin;
/**
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-scrollYMax
*/
chrome.automation.AutomationNode.prototype.scrollYMax;
/**
* The character index of the start of the selection within this editable text element; -1 if no selection.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-textSelStart
*/
chrome.automation.AutomationNode.prototype.textSelStart;
/**
* The character index of the end of the selection within this editable text element; -1 if no selection.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-textSelEnd
*/
chrome.automation.AutomationNode.prototype.textSelEnd;
/**
* The input type, like email or number.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-textInputType
*/
chrome.automation.AutomationNode.prototype.textInputType;
/**
* An array of indexes of the break between lines in editable text.
* @type {!Array<number>}
* @see https://developer.chrome.com/extensions/automation#type-lineBreaks
*/
chrome.automation.AutomationNode.prototype.lineBreaks;
/**
* An array of indexes of the start position of each text marker.
* @type {!Array<number>}
* @see https://developer.chrome.com/extensions/automation#type-markerStarts
*/
chrome.automation.AutomationNode.prototype.markerStarts;
/**
* An array of indexes of the end position of each text marker.
* @type {!Array<number>}
* @see https://developer.chrome.com/extensions/automation#type-markerEnds
*/
chrome.automation.AutomationNode.prototype.markerEnds;
/**
* An array of numerical types indicating the type of each text marker, such as a spelling error.
* @type {!Array<number>}
* @see https://developer.chrome.com/extensions/automation#type-markerTypes
*/
chrome.automation.AutomationNode.prototype.markerTypes;
/**
* The anchor node of the tree selection, if any.
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-anchorObject
*/
chrome.automation.AutomationNode.prototype.anchorObject;
/**
* The anchor offset of the tree selection, if any.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-anchorOffset
*/
chrome.automation.AutomationNode.prototype.anchorOffset;
/**
* The affinity of the tree selection anchor, if any.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-anchorAffinity
*/
chrome.automation.AutomationNode.prototype.anchorAffinity;
/**
* The focus node of the tree selection, if any.
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-focusObject
*/
chrome.automation.AutomationNode.prototype.focusObject;
/**
* The focus offset of the tree selection, if any.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-focusOffset
*/
chrome.automation.AutomationNode.prototype.focusOffset;
/**
* The affinity of the tree selection focus, if any.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-focusAffinity
*/
chrome.automation.AutomationNode.prototype.focusAffinity;
/**
* The current value for this range.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-valueForRange
*/
chrome.automation.AutomationNode.prototype.valueForRange;
/**
* The minimum possible value for this range.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-minValueForRange
*/
chrome.automation.AutomationNode.prototype.minValueForRange;
/**
* The maximum possible value for this range.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-maxValueForRange
*/
chrome.automation.AutomationNode.prototype.maxValueForRange;
/**
* The 1-based index of an item in a set.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-posInSet
*/
chrome.automation.AutomationNode.prototype.posInSet;
/**
* The number of items in a set;
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-setSize
*/
chrome.automation.AutomationNode.prototype.setSize;
/**
* The number of rows in this table as specified in the DOM.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-tableRowCount
*/
chrome.automation.AutomationNode.prototype.tableRowCount;
/**
* The number of rows in this table as specified by the page author.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-ariaRowCount
*/
chrome.automation.AutomationNode.prototype.ariaRowCount;
/**
* The number of columns in this table as specified in the DOM.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-tableColumnCount
*/
chrome.automation.AutomationNode.prototype.tableColumnCount;
/**
* The number of columns in this table as specified by the page author.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-ariaColumnCount
*/
chrome.automation.AutomationNode.prototype.ariaColumnCount;
/**
* The zero-based index of the column that this cell is in as specified in the DOM.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-tableCellColumnIndex
*/
chrome.automation.AutomationNode.prototype.tableCellColumnIndex;
/**
* The ARIA column index as specified by the page author.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-ariaCellColumnIndex
*/
chrome.automation.AutomationNode.prototype.ariaCellColumnIndex;
/**
* The number of columns that this cell spans (default is 1).
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-tableCellColumnSpan
*/
chrome.automation.AutomationNode.prototype.tableCellColumnSpan;
/**
* The zero-based index of the row that this cell is in as specified in the DOM.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-tableCellRowIndex
*/
chrome.automation.AutomationNode.prototype.tableCellRowIndex;
/**
* The ARIA row index as specified by the page author.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-ariaCellRowIndex
*/
chrome.automation.AutomationNode.prototype.ariaCellRowIndex;
/**
* The number of rows that this cell spans (default is 1).
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-tableCellRowSpan
*/
chrome.automation.AutomationNode.prototype.tableCellRowSpan;
/**
* The corresponding column header for this cell.
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-tableColumnHeader
*/
chrome.automation.AutomationNode.prototype.tableColumnHeader;
/**
* The corresponding row header for this cell.
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-tableRowHeader
*/
chrome.automation.AutomationNode.prototype.tableRowHeader;
/**
* The column index of this column node.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-tableColumnIndex
*/
chrome.automation.AutomationNode.prototype.tableColumnIndex;
/**
* The row index of this row node.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-tableRowIndex
*/
chrome.automation.AutomationNode.prototype.tableRowIndex;
/**
* The type of region if this is the root of a live region. Possible values are 'polite' and 'assertive'.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-liveStatus
*/
chrome.automation.AutomationNode.prototype.liveStatus;
/**
* The value of aria-relevant for a live region.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-liveRelevant
*/
chrome.automation.AutomationNode.prototype.liveRelevant;
/**
* The value of aria-atomic for a live region.
* @type {(boolean|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-liveAtomic
*/
chrome.automation.AutomationNode.prototype.liveAtomic;
/**
* The value of aria-busy for a live region or any other element.
* @type {(boolean|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-busy
*/
chrome.automation.AutomationNode.prototype.busy;
/**
* The type of live region if this node is inside a live region.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-containerLiveStatus
*/
chrome.automation.AutomationNode.prototype.containerLiveStatus;
/**
* The value of aria-relevant if this node is inside a live region.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-containerLiveRelevant
*/
chrome.automation.AutomationNode.prototype.containerLiveRelevant;
/**
* The value of aria-atomic if this node is inside a live region.
* @type {(boolean|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-containerLiveAtomic
*/
chrome.automation.AutomationNode.prototype.containerLiveAtomic;
/**
* The value of aria-busy if this node is inside a live region.
* @type {(boolean|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-containerLiveBusy
*/
chrome.automation.AutomationNode.prototype.containerLiveBusy;
/**
* Aria auto complete.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-autoComplete
*/
chrome.automation.AutomationNode.prototype.autoComplete;
/**
* The name of the programmatic backing object.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-className
*/
chrome.automation.AutomationNode.prototype.className;
/**
* Marks this subtree as modal.
* @type {(boolean|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-modal
*/
chrome.automation.AutomationNode.prototype.modal;
/**
* A map containing all HTML attributes and their values
* @type {Object<string>}
* @see https://developer.chrome.com/extensions/automation#type-htmlAttributes
*/
chrome.automation.AutomationNode.prototype.htmlAttributes;
/**
* The input type of a text field, such as "text" or "email".
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-inputType
*/
chrome.automation.AutomationNode.prototype.inputType;
/**
* The key that activates this widget.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-accessKey
*/
chrome.automation.AutomationNode.prototype.accessKey;
/**
* The value of the aria-invalid attribute, indicating the error type.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-ariaInvalidValue
*/
chrome.automation.AutomationNode.prototype.ariaInvalidValue;
/**
* The CSS display attribute for this node, if applicable.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-display
*/
chrome.automation.AutomationNode.prototype.display;
/**
* A data url with the contents of this object's image or thumbnail.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-imageDataUrl
*/
chrome.automation.AutomationNode.prototype.imageDataUrl;
/**
* The language code for this subtree.
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-language
*/
chrome.automation.AutomationNode.prototype.language;
/**
* Indicates the availability and type of interactive popup element true - the popup is a menu menu - the popup is a menu listbox - the popup is a listbox tree - the popup is a tree grid - the popup is a grid dialog - the popup is a dialog
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-hasPopup
*/
chrome.automation.AutomationNode.prototype.hasPopup;
/**
* Input restriction, if any, such as readonly or disabled: undefined - enabled control or other object that is not disabled Restriction.DISABLED - disallows input in itself + any descendants Restriction.READONLY - allow focus/selection but not input
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-restriction
*/
chrome.automation.AutomationNode.prototype.restriction;
/**
* Tri-state describing checkbox or radio button: 'false' | 'true' | 'mixed'
* @type {(string|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-checked
*/
chrome.automation.AutomationNode.prototype.checked;
/**
* The RGBA foreground color of this subtree, as an integer.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-color
*/
chrome.automation.AutomationNode.prototype.color;
/**
* The RGBA background color of this subtree, as an integer.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-backgroundColor
*/
chrome.automation.AutomationNode.prototype.backgroundColor;
/**
* The RGBA color of an input element whose value is a color.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-colorValue
*/
chrome.automation.AutomationNode.prototype.colorValue;
/**
* Indicates node text is subscript.
* @type {boolean}
* @see https://developer.chrome.com/extensions/automation#type-subscript
*/
chrome.automation.AutomationNode.prototype.subscript;
/**
* Indicates node text is superscript.
* @type {boolean}
* @see https://developer.chrome.com/extensions/automation#type-superscript
*/
chrome.automation.AutomationNode.prototype.superscript;
/**
* Indicates node text is bold.
* @type {boolean}
* @see https://developer.chrome.com/extensions/automation#type-bold
*/
chrome.automation.AutomationNode.prototype.bold;
/**
* Indicates node text is italic.
* @type {boolean}
* @see https://developer.chrome.com/extensions/automation#type-italic
*/
chrome.automation.AutomationNode.prototype.italic;
/**
* Indicates node text is underline.
* @type {boolean}
* @see https://developer.chrome.com/extensions/automation#type-underline
*/
chrome.automation.AutomationNode.prototype.underline;
/**
* Indicates node text is line through.
* @type {boolean}
* @see https://developer.chrome.com/extensions/automation#type-lineThrough
*/
chrome.automation.AutomationNode.prototype.lineThrough;
/**
* Indicates whether this node is selected, unselected, or neither.
* @type {(boolean|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-selected
*/
chrome.automation.AutomationNode.prototype.selected;
/**
* Walking the tree.
* @type {!Array<!chrome.automation.AutomationNode>}
* @see https://developer.chrome.com/extensions/automation#type-children
*/
chrome.automation.AutomationNode.prototype.children;
/**
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-parent
*/
chrome.automation.AutomationNode.prototype.parent;
/**
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-firstChild
*/
chrome.automation.AutomationNode.prototype.firstChild;
/**
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-lastChild
*/
chrome.automation.AutomationNode.prototype.lastChild;
/**
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-previousSibling
*/
chrome.automation.AutomationNode.prototype.previousSibling;
/**
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-nextSibling
*/
chrome.automation.AutomationNode.prototype.nextSibling;
/**
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-previousOnLine
*/
chrome.automation.AutomationNode.prototype.previousOnLine;
/**
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-nextOnLine
*/
chrome.automation.AutomationNode.prototype.nextOnLine;
/**
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-previousFocus
*/
chrome.automation.AutomationNode.prototype.previousFocus;
/**
* @type {(!chrome.automation.AutomationNode|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-nextFocus
*/
chrome.automation.AutomationNode.prototype.nextFocus;
/**
* The index of this node in its parent node's list of children. If this is the root node, this will be undefined.
* @type {(number|undefined)}
* @see https://developer.chrome.com/extensions/automation#type-indexInParent
*/
chrome.automation.AutomationNode.prototype.indexInParent;
/**
* Does the default action based on this node's role. This is generally the same
* action that would result from clicking the node such as expanding a treeitem,
* toggling a checkbox, selecting a radiobutton, or activating a button.
* @see https://developer.chrome.com/extensions/automation#method-doDefault
*/
chrome.automation.AutomationNode.prototype.doDefault = function() {};
/**
* Places focus on this node.
* @see https://developer.chrome.com/extensions/automation#method-focus
*/
chrome.automation.AutomationNode.prototype.focus = function() {};
/**
* Request a data url for the contents of an image, optionally resized. Pass
* zero for maxWidth and/or maxHeight for the original size.
* @param {number} maxWidth
* @param {number} maxHeight
* @see https://developer.chrome.com/extensions/automation#method-getImageData
*/
chrome.automation.AutomationNode.prototype.getImageData = function(maxWidth, maxHeight) {};
/**
* Does a hit test of the given global screen coordinates, and fires eventToFire
* on the resulting object.
* @param {number} x
* @param {number} y
* @param {!chrome.automation.EventType} eventToFire
* @see https://developer.chrome.com/extensions/automation#method-hitTest
*/
chrome.automation.AutomationNode.prototype.hitTest = function(x, y, eventToFire) {};
/**
* Does a $(ref:automation.AutomationNode.hitTest), and receives a callback with
* the resulting hit node.
* @param {number} x
* @param {number} y
* @param {function(!chrome.automation.AutomationNode):void} callback
* @see https://developer.chrome.com/extensions/automation#method-hitTestWithReply
*/
chrome.automation.AutomationNode.prototype.hitTestWithReply = function(x, y, callback) {};
/**
* Scrolls this node to make it visible.
* @see https://developer.chrome.com/extensions/automation#method-makeVisible
*/
chrome.automation.AutomationNode.prototype.makeVisible = function() {};
/**
* Performs custom action.
* @param {number} customActionId
* @see https://developer.chrome.com/extensions/automation#method-performCustomAction
*/
chrome.automation.AutomationNode.prototype.performCustomAction = function(customActionId) {};
/**
* Convenience method to perform a standard action supported by this node. For
* actions requiring additional arguments, call the specific binding e.g.
* <code>setSelection</code>.
* @param {!chrome.automation.ActionType} actionType
* @see https://developer.chrome.com/extensions/automation#method-performStandardAction
*/
chrome.automation.AutomationNode.prototype.performStandardAction = function(actionType) {};
/**
* Replaces the selected text within a text field.
* @param {string} value
* @see https://developer.chrome.com/extensions/automation#method-replaceSelectedText
*/
chrome.automation.AutomationNode.prototype.replaceSelectedText = function(value) {};
/**
* Sets selection within a text field.
* @param {number} startIndex
* @param {number} endIndex
* @see https://developer.chrome.com/extensions/automation#method-setSelection
*/
chrome.automation.AutomationNode.prototype.setSelection = function(startIndex, endIndex) {};
/**
* Clears focus and sets this node as the starting point for the next time the
* user presses Tab or Shift+Tab.
* @see https://developer.chrome.com/extensions/automation#method-setSequentialFocusNavigationStartingPoint
*/
chrome.automation.AutomationNode.prototype.setSequentialFocusNavigationStartingPoint = function() {};
/**
* Sets the value of a text field.
* @param {string} value
* @see https://developer.chrome.com/extensions/automation#method-setValue
*/
chrome.automation.AutomationNode.prototype.setValue = function(value) {};
/**
* Show the context menu for this element, as if the user right-clicked.
* @see https://developer.chrome.com/extensions/automation#method-showContextMenu
*/
chrome.automation.AutomationNode.prototype.showContextMenu = function() {};
/**
* Resume playing any media within this tree.
* @see https://developer.chrome.com/extensions/automation#method-resumeMedia
*/
chrome.automation.AutomationNode.prototype.resumeMedia = function() {};
/**
* Start ducking any media within this tree.
* @see https://developer.chrome.com/extensions/automation#method-startDuckingMedia
*/
chrome.automation.AutomationNode.prototype.startDuckingMedia = function() {};
/**
* Stop ducking any media within this tree.
* @see https://developer.chrome.com/extensions/automation#method-stopDuckingMedia
*/
chrome.automation.AutomationNode.prototype.stopDuckingMedia = function() {};
/**
* Suspend any media playing within this tree.
* @see https://developer.chrome.com/extensions/automation#method-suspendMedia
*/
chrome.automation.AutomationNode.prototype.suspendMedia = function() {};
/**
* Scrolls this scrollable container backward.
* @param {function(boolean):void} callback Callback called for actions with a
* response.
* @see https://developer.chrome.com/extensions/automation#method-scrollBackward
*/
chrome.automation.AutomationNode.prototype.scrollBackward = function(callback) {};
/**
* Scrolls this scrollable container forward.
* @param {function(boolean):void} callback Callback called for actions with a
* response.
* @see https://developer.chrome.com/extensions/automation#method-scrollForward
*/
chrome.automation.AutomationNode.prototype.scrollForward = function(callback) {};
/**
* Scrolls this scrollable container up.
* @param {function(boolean):void} callback Callback called for actions with a
* response.
* @see https://developer.chrome.com/extensions/automation#method-scrollUp
*/
chrome.automation.AutomationNode.prototype.scrollUp = function(callback) {};
/**
* Scrolls this scrollable container down.
* @param {function(boolean):void} callback Callback called for actions with a
* response.
* @see https://developer.chrome.com/extensions/automation#method-scrollDown
*/
chrome.automation.AutomationNode.prototype.scrollDown = function(callback) {};
/**
* Scrolls this scrollable container left.
* @param {function(boolean):void} callback Callback called for actions with a
* response.
* @see https://developer.chrome.com/extensions/automation#method-scrollLeft
*/
chrome.automation.AutomationNode.prototype.scrollLeft = function(callback) {};
/**
* Scrolls this scrollable container right.
* @param {function(boolean):void} callback Callback called for actions with a
* response.
* @see https://developer.chrome.com/extensions/automation#method-scrollRight
*/
chrome.automation.AutomationNode.prototype.scrollRight = function(callback) {};
/**
* Adds a listener for the given event type and event phase.
* @param {!chrome.automation.EventType} eventType
* @param {function(!chrome.automation.AutomationEvent):void} listener A
* listener for events on an <code>AutomationNode</code>.
* @param {boolean} capture
* @see https://developer.chrome.com/extensions/automation#method-addEventListener
*/
chrome.automation.AutomationNode.prototype.addEventListener = function(eventType, listener, capture) {};
/**
* Removes a listener for the given event type and event phase.
* @param {!chrome.automation.EventType} eventType
* @param {function(!chrome.automation.AutomationEvent):void} listener A
* listener for events on an <code>AutomationNode</code>.
* @param {boolean} capture
* @see https://developer.chrome.com/extensions/automation#method-removeEventListener
*/
chrome.automation.AutomationNode.prototype.removeEventListener = function(eventType, listener, capture) {};
/**
* <p>Gets the first node in this node's subtree which matches the given CSS
* selector and is within the same DOM context.</p><p>If this node doesn't
* correspond directly with an HTML node in the DOM, querySelector will be run
* on this node's nearest HTML node ancestor. Note that this may result in the
* query returning a node which is not a descendant of this node.</p><p>If the
* selector matches a node which doesn't directly correspond to an automation
* node (for example an element within an ARIA widget, where the ARIA widget
* forms one node of the automation tree, or an element which is hidden from
* accessibility via hiding it using CSS or using aria-hidden), this will return
* the nearest ancestor which does correspond to an automation node.</p>
* @param {string} selector
* @param {function(!chrome.automation.AutomationNode):void} callback Called
* when the result for a <code>query</code> is available.
* @see https://developer.chrome.com/extensions/automation#method-domQuerySelector
*/
chrome.automation.AutomationNode.prototype.domQuerySelector = function(selector, callback) {};
/**
* Finds the first AutomationNode in this node's subtree which matches the given
* search parameters.
* @param {!chrome.automation.FindParams} params
* @return {!chrome.automation.AutomationNode}
* @see https://developer.chrome.com/extensions/automation#method-find
*/
chrome.automation.AutomationNode.prototype.find = function(params) {};
/**
* Finds all the AutomationNodes in this node's subtree which matches the given
* search parameters.
* @param {!chrome.automation.FindParams} params
* @return {!Array<!chrome.automation.AutomationNode>}
* @see https://developer.chrome.com/extensions/automation#method-findAll
*/
chrome.automation.AutomationNode.prototype.findAll = function(params) {};
/**
* Returns whether this node matches the given $(ref:automation.FindParams).
* @param {!chrome.automation.FindParams} params
* @return {boolean}
* @see https://developer.chrome.com/extensions/automation#method-matches
*/
chrome.automation.AutomationNode.prototype.matches = function(params) {};
/**
* @param {string} searchStr
* @param {boolean} backward
* @return {!chrome.automation.AutomationNode}
* @see https://developer.chrome.com/extensions/automation#method-getNextTextMatch
*/
chrome.automation.AutomationNode.prototype.getNextTextMatch = function(searchStr, backward) {};
/**
* Get the automation tree for the tab with the given tabId, or the current tab
* if no tabID is given, enabling automation if necessary. Returns a tree with a
* placeholder root node; listen for the "loadComplete" event to get a
* notification that the tree has fully loaded (the previous root node reference
* will stop working at or before this point).
* @param {number=} tabId
* @param {function(!chrome.automation.AutomationNode):void=} callback Called
* when the <code>AutomationNode</code> for the page is available.
* @see https://developer.chrome.com/extensions/automation#method-getTree
*/
chrome.automation.getTree = function(tabId, callback) {};
/**
* Get the automation tree for the whole desktop which consists of all on screen
* views. Note this API is currently only supported on Chrome OS.
* @param {function(!chrome.automation.AutomationNode):void} callback Called
* when the <code>AutomationNode</code> for the page is available.
* @see https://developer.chrome.com/extensions/automation#method-getDesktop
*/
chrome.automation.getDesktop = function(callback) {};
/**
* Get the automation node that currently has focus, globally. Will return null
* if none of the nodes in any loaded trees have focus.
* @param {function(!chrome.automation.AutomationNode):void} callback Called
* with the <code>AutomationNode</code> that currently has focus.
* @see https://developer.chrome.com/extensions/automation#method-getFocus
*/
chrome.automation.getFocus = function(callback) {};
/**
* Add a tree change observer. Tree change observers are static/global, they
* listen to changes across all trees. Pass a filter to determine what specific
* tree changes to listen to, and note that listnening to all tree changes can
* be expensive.
* @param {!chrome.automation.TreeChangeObserverFilter} filter
* @param {function(!chrome.automation.TreeChange):void} observer A listener for
* changes on the <code>AutomationNode</code> tree.
* @see https://developer.chrome.com/extensions/automation#method-addTreeChangeObserver
*/
chrome.automation.addTreeChangeObserver = function(filter, observer) {};
/**
* Remove a tree change observer.
* @param {function(!chrome.automation.TreeChange):void} observer A listener for
* changes on the <code>AutomationNode</code> tree.
* @see https://developer.chrome.com/extensions/automation#method-removeTreeChangeObserver
*/
chrome.automation.removeTreeChangeObserver = function(observer) {};
/**
* Sets the selection in a tree. This creates a selection in a single tree
* (anchorObject and focusObject must have the same root). Everything in the
* tree between the two node/offset pairs gets included in the selection. The
* anchor is where the user started the selection, while the focus is the point
* at which the selection gets extended e.g. when dragging with a mouse or using
* the keyboard. For nodes with the role staticText, the offset gives the
* character offset within the value where the selection starts or ends,
* respectively.
* @param {!chrome.automation.SetDocumentSelectionParams} params
* @see https://developer.chrome.com/extensions/automation#method-setDocumentSelection
*/
chrome.automation.setDocumentSelection = function(params) {};