Hi there! Are you looking for the official Deno documentation? Try docs.deno.com for all your Deno learning needs.

Deno.PermissionOptionsObject

interface PermissionOptionsObject {
env?: "inherit" | boolean | string[];
ffi?: "inherit" | boolean | Array<string | URL>;
hrtime?: "inherit" | boolean;
net?: "inherit" | boolean | string[];
read?: "inherit" | boolean | Array<string | URL>;
run?: "inherit" | boolean | Array<string | URL>;
write?: "inherit" | boolean | Array<string | URL>;
}

§Properties

§
env?: "inherit" | boolean | string[]
[src]

Specifies if the env permission should be requested or revoked. If set to "inherit", the current env permission will be inherited. If set to true, the global env permission will be requested. If set to false, the global env permission will be revoked.

Defaults to false.

§
ffi?: "inherit" | boolean | Array<string | URL>
[src]

Specifies if the ffi permission should be requested or revoked. If set to "inherit", the current ffi permission will be inherited. If set to true, the global ffi permission will be requested. If set to false, the global ffi permission will be revoked.

Defaults to false.

§
hrtime?: "inherit" | boolean
[src]

Specifies if the hrtime permission should be requested or revoked. If set to "inherit", the current hrtime permission will be inherited. If set to true, the global hrtime permission will be requested. If set to false, the global hrtime permission will be revoked.

Defaults to false.

§
net?: "inherit" | boolean | string[]
[src]

Specifies if the net permission should be requested or revoked. if set to "inherit", the current net permission will be inherited. if set to true, the global net permission will be requested. if set to false, the global net permission will be revoked. if set to string[], the net permission will be requested with the specified host strings with the format "<host>[:<port>].

Defaults to false.

Examples:

import { assertEquals } from "https://deno.land/std/testing/asserts.ts";

Deno.test({
  name: "inherit",
  permissions: {
    net: "inherit",
  },
  async fn() {
    const status = await Deno.permissions.query({ name: "net" })
    assertEquals(status.state, "granted");
  },
});
import { assertEquals } from "https://deno.land/std/testing/asserts.ts";

Deno.test({
  name: "true",
  permissions: {
    net: true,
  },
  async fn() {
    const status = await Deno.permissions.query({ name: "net" });
    assertEquals(status.state, "granted");
  },
});
import { assertEquals } from "https://deno.land/std/testing/asserts.ts";

Deno.test({
  name: "false",
  permissions: {
    net: false,
  },
  async fn() {
    const status = await Deno.permissions.query({ name: "net" });
    assertEquals(status.state, "denied");
  },
});
import { assertEquals } from "https://deno.land/std/testing/asserts.ts";

Deno.test({
  name: "localhost:8080",
  permissions: {
    net: ["localhost:8080"],
  },
  async fn() {
    const status = await Deno.permissions.query({ name: "net", host: "localhost:8080" });
    assertEquals(status.state, "granted");
  },
});
§
read?: "inherit" | boolean | Array<string | URL>
[src]

Specifies if the read permission should be requested or revoked. If set to "inherit", the current read permission will be inherited. If set to true, the global read permission will be requested. If set to false, the global read permission will be revoked. If set to Array<string | URL>, the read permission will be requested with the specified file paths.

Defaults to false.

§
run?: "inherit" | boolean | Array<string | URL>
[src]

Specifies if the run permission should be requested or revoked. If set to "inherit", the current run permission will be inherited. If set to true, the global run permission will be requested. If set to false, the global run permission will be revoked.

Defaults to false.

§
write?: "inherit" | boolean | Array<string | URL>
[src]

Specifies if the write permission should be requested or revoked. If set to "inherit", the current write permission will be inherited. If set to true, the global write permission will be requested. If set to false, the global write permission will be revoked. If set to Array<string | URL>, the write permission will be requested with the specified file paths.

Defaults to false.