]> git.proxmox.com Git - mirror_xterm.js.git/blobdiff - src/Interfaces.ts
Merge pull request #690 from Tyriar/687_macos_ci
[mirror_xterm.js.git] / src / Interfaces.ts
index 324eec16f075ad5513ef42fab8c954d1173f88a0..4b8576742d07a76bebabd643a2b8cd55f87b4860 100644 (file)
@@ -2,7 +2,8 @@
  * @license MIT
  */
 
-import { LinkMatcherValidationCallback } from './Types';
+import { LinkMatcherOptions } from './Interfaces';
+import { LinkMatcherHandler, LinkMatcherValidationCallback } from './Types';
 
 export interface IBrowser {
   isNode: boolean;
@@ -19,6 +20,8 @@ export interface IBrowser {
 export interface ITerminal {
   element: HTMLElement;
   rowContainer: HTMLElement;
+  selectionContainer: HTMLElement;
+  charMeasure: ICharMeasure;
   textarea: HTMLTextAreaElement;
   ybase: number;
   ydisp: number;
@@ -46,12 +49,23 @@ export interface ITerminal {
   emit(event: string, data: any);
 }
 
+export interface ISelectionManager {
+  selectionText: string;
+}
+
 export interface ICharMeasure {
   width: number;
   height: number;
   measure(): void;
 }
 
+export interface ILinkifier {
+  linkifyRow(rowIndex: number): void;
+  attachHypertextLinkHandler(handler: LinkMatcherHandler): void;
+  registerLinkMatcher(regex: RegExp, handler: LinkMatcherHandler, options?: LinkMatcherOptions): number;
+  deregisterLinkMatcher(matcherId: number): boolean;
+}
+
 interface ICircularList<T> {
   length: number;
   maxLength: number;
@@ -77,13 +91,12 @@ export interface LinkMatcherOptions {
    * false if invalid.
    */
   validationCallback?: LinkMatcherValidationCallback;
-}
-
-/**
- *
- * @param a
- */
-function a(a) {
+  /**
+   * The priority of the link matcher, this defines the order in which the link
+   * matcher is evaluated relative to others, from highest to lowest. The
+   * default value is 0.
+   */
+  priority?: number;
 }
 
 /**