<commit_before>declare module 'vex' {
  declare class VexDefaultOptions {
    appendLocation?: ?string;
    className?: ?string;
    closeClassName?: ?string;
    closeCSS?: Object;
    content?: ?string;
    contentClassName?: ?string;
    contentCSS?: Object;
    css?: Object;
    escapeButtonCloses?: bool;
    overlayClassName?: ?string;
    overlayClosesOnClick?: bool;
    overlayCSS?: Object;
    showCloseButton?: bool;
  }
  declare class VexOptions extends VexDefaultOptions {
    afterOpen?: (contentNode: Node) => any;
    afterClose?: () => any;
  }
  declare class VexDialog {
    static defaultOptions: VexDefaultOptions;
    static alert(options: string|VexOptions): any;
    static confirm(options: VexOptions): any;
    static prompt(options: VexOptions): any;
    static open(options: VexOptions): any;
    static close(id?: ?number): void;
    static closeAll(): void;
    static getAllVexes(): Array<Element>;
    static getVexByID(id: number): any;
  }
  declare class Vex extends VexDialog {
    static dialog: typeof VexDialog;
  }
  declare var exports: typeof Vex;
}<commit_msg><vex> Start to emulate JQueryArray<commit_after>declare module 'vex' {
  declare interface JQueryArray<T> extends Array<T> {
    last(): T;
    first(): T;
  }
  declare interface VexDefaultOptions {
    appendLocation?: ?string;
    className?: ?string;
    closeClassName?: ?string;
    closeCSS?: Object;
    content?: ?string;
    contentClassName?: ?string;
    contentCSS?: Object;
    css?: Object;
    escapeButtonCloses?: bool;
    overlayClassName?: ?string;
    overlayClosesOnClick?: bool;
    overlayCSS?: Object;
    showCloseButton?: bool;
  }
  declare interface VexOptions extends VexDefaultOptions {
    afterOpen?: (contentNode: Node) => any;
    afterClose?: () => any;
  }
  declare class VexDialog {
    static defaultOptions: VexDefaultOptions;
    static alert(options: string|VexOptions): any;
    static confirm(options: VexOptions): any;
    static prompt(options: VexOptions): any;
    static open(options: VexOptions): any;
    static close(id?: ?number): void;
    static closeAll(): void;
    static getAllVexes(): JQueryArray<Element>;
    static getVexByID(id: number): any;
  }
  declare class Vex extends VexDialog {
    static dialog: typeof VexDialog;
  }
  declare var exports: typeof Vex;
}
{'fraction_non_alphanumeric': 0.11311053984575835, 'fraction_numerical': 0.0, 'mean_word_length': 3.9261603375527425, 'pattern_counts': {'":': 0, '<': 8, '<?xml version=': 0, '>': 12, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5113287', 'n_tokens_mistral': 703, 'n_tokens_neox': 690, 'n_words': 199}