2021-01-11 12:13:41 -05:00
|
|
|
// Copyright 2018-2021 the Deno authors. All rights reserved. MIT license.
|
2020-01-29 12:54:23 -05:00
|
|
|
|
|
|
|
/// <reference no-default-lib="true" />
|
2020-02-19 00:34:11 -05:00
|
|
|
/// <reference lib="deno.ns" />
|
|
|
|
/// <reference lib="deno.shared_globals" />
|
2020-01-29 12:54:23 -05:00
|
|
|
/// <reference lib="esnext" />
|
|
|
|
|
2020-10-11 18:04:43 -04:00
|
|
|
declare class Window extends EventTarget {
|
|
|
|
new(): Window;
|
2020-04-11 11:42:02 -04:00
|
|
|
readonly window: Window & typeof globalThis;
|
|
|
|
readonly self: Window & typeof globalThis;
|
|
|
|
onload: ((this: Window, ev: Event) => any) | null;
|
|
|
|
onunload: ((this: Window, ev: Event) => any) | null;
|
2020-03-24 23:56:40 -04:00
|
|
|
close: () => void;
|
2020-04-11 11:42:02 -04:00
|
|
|
readonly closed: boolean;
|
2020-10-13 09:31:59 -04:00
|
|
|
alert: (message?: string) => void;
|
|
|
|
confirm: (message?: string) => boolean;
|
|
|
|
prompt: (message?: string, defaultValue?: string) => string | null;
|
2020-01-29 12:54:23 -05:00
|
|
|
Deno: typeof Deno;
|
|
|
|
}
|
|
|
|
|
2020-09-25 17:23:35 -04:00
|
|
|
declare var window: Window & typeof globalThis;
|
|
|
|
declare var self: Window & typeof globalThis;
|
|
|
|
declare var onload: ((this: Window, ev: Event) => any) | null;
|
|
|
|
declare var onunload: ((this: Window, ev: Event) => any) | null;
|
2020-01-29 12:54:23 -05:00
|
|
|
|
2020-10-13 09:31:59 -04:00
|
|
|
/**
|
|
|
|
* Shows the given message and waits for the enter key pressed.
|
|
|
|
* If the stdin is not interactive, it does nothing.
|
|
|
|
* @param message
|
|
|
|
*/
|
|
|
|
declare function alert(message?: string): void;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Shows the given message and waits for the answer. Returns the user's answer as boolean.
|
|
|
|
* Only `y` and `Y` are considered as true.
|
|
|
|
* If the stdin is not interactive, it returns false.
|
|
|
|
* @param message
|
|
|
|
*/
|
|
|
|
declare function confirm(message?: string): boolean;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Shows the given message and waits for the user's input. Returns the user's input as string.
|
|
|
|
* If the default value is given and the user inputs the empty string, then it returns the given
|
|
|
|
* default value.
|
|
|
|
* If the default value is not given and the user inputs the empty string, it returns null.
|
|
|
|
* If the stdin is not interactive, it returns null.
|
|
|
|
* @param message
|
|
|
|
* @param defaultValue
|
|
|
|
*/
|
|
|
|
declare function prompt(message?: string, defaultValue?: string): string | null;
|
2021-01-17 10:28:54 -05:00
|
|
|
|
|
|
|
// TODO(nayeemrmn): Move this to `op_crates/web` where its implementation is.
|
|
|
|
// The types there must first be split into window, worker and global types.
|
|
|
|
/** The location (URL) of the object it is linked to. Changes done on it are
|
|
|
|
* reflected on the object it relates to. Accessible via
|
|
|
|
* `globalThis.location`. */
|
|
|
|
declare class Location {
|
|
|
|
constructor();
|
|
|
|
/** Returns a DOMStringList object listing the origins of the ancestor
|
|
|
|
* browsing contexts, from the parent browsing context to the top-level
|
|
|
|
* browsing context.
|
|
|
|
*
|
|
|
|
* Always empty in Deno. */
|
|
|
|
readonly ancestorOrigins: DOMStringList;
|
|
|
|
/** Returns the Location object's URL's fragment (includes leading "#" if
|
|
|
|
* non-empty).
|
|
|
|
*
|
|
|
|
* Cannot be set in Deno. */
|
|
|
|
hash: string;
|
|
|
|
/** Returns the Location object's URL's host and port (if different from the
|
|
|
|
* default port for the scheme).
|
|
|
|
*
|
|
|
|
* Cannot be set in Deno. */
|
|
|
|
host: string;
|
|
|
|
/** Returns the Location object's URL's host.
|
|
|
|
*
|
|
|
|
* Cannot be set in Deno. */
|
|
|
|
hostname: string;
|
|
|
|
/** Returns the Location object's URL.
|
|
|
|
*
|
|
|
|
* Cannot be set in Deno. */
|
|
|
|
href: string;
|
|
|
|
toString(): string;
|
|
|
|
/** Returns the Location object's URL's origin. */
|
|
|
|
readonly origin: string;
|
|
|
|
/** Returns the Location object's URL's path.
|
|
|
|
*
|
|
|
|
* Cannot be set in Deno. */
|
|
|
|
pathname: string;
|
|
|
|
/** Returns the Location object's URL's port.
|
|
|
|
*
|
|
|
|
* Cannot be set in Deno. */
|
|
|
|
port: string;
|
|
|
|
/** Returns the Location object's URL's scheme.
|
|
|
|
*
|
|
|
|
* Cannot be set in Deno. */
|
|
|
|
protocol: string;
|
|
|
|
/** Returns the Location object's URL's query (includes leading "?" if
|
|
|
|
* non-empty).
|
|
|
|
*
|
|
|
|
* Cannot be set in Deno. */
|
|
|
|
search: string;
|
|
|
|
/** Navigates to the given URL.
|
|
|
|
*
|
|
|
|
* Cannot be set in Deno. */
|
|
|
|
assign(url: string): void;
|
|
|
|
/** Reloads the current page.
|
|
|
|
*
|
|
|
|
* Disabled in Deno. */
|
|
|
|
reload(): void;
|
|
|
|
/** @deprecated */
|
|
|
|
reload(forcedReload: boolean): void;
|
|
|
|
/** Removes the current page from the session history and navigates to the
|
|
|
|
* given URL.
|
|
|
|
*
|
|
|
|
* Disabled in Deno. */
|
|
|
|
replace(url: string): void;
|
|
|
|
}
|
|
|
|
|
|
|
|
// TODO(nayeemrmn): Move this to `op_crates/web` where its implementation is.
|
|
|
|
// The types there must first be split into window, worker and global types.
|
|
|
|
declare var location: Location;
|