Variable ExtPackageJsonConst
ExtPackageJson: ObjectSchema<
{
author: OptionalSchema<
UnionSchema<
[
ObjectSchema<
{
email: OptionalSchema<
NullableSchema<StringSchema<"Email of the person">, undefined>,
undefined,
>;
name: StringSchema<"GitHub Username">;
url: OptionalSchema<
NullableSchema<StringSchema<"URL of the person">, undefined>,
undefined,
>;
},
undefined,
>,
StringSchema<"GitHub Username">,
],
undefined,
>,
undefined,
>;
contributors: OptionalSchema<
ArraySchema<
UnionSchema<
[
ObjectSchema<
{
email: OptionalSchema<
NullableSchema<StringSchema<(...)>, undefined>,
undefined,
>;
name: StringSchema<"GitHub Username">;
url: OptionalSchema<
NullableSchema<StringSchema<(...)>, undefined>,
undefined,
>;
},
undefined,
>,
StringSchema<"GitHub Username">,
],
undefined,
>,
"Contributors of the extension",
>,
undefined,
>;
dependencies: OptionalSchema<
RecordSchema<
StringSchema<undefined>,
StringSchema<undefined>,
undefined,
>,
undefined,
>;
draft: OptionalSchema<
BooleanSchema<
"Whether the extension is a draft, draft will not be published",
>,
undefined,
>;
files: OptionalSchema<
ArraySchema<
StringSchema<"Files to include in the extension. e.g. ['dist']">,
undefined,
>,
undefined,
>;
kunkun: ObjectSchema<
{
customUiCmds: OptionalSchema<
ArraySchema<
ObjectSchema<
{
cmds: ArraySchema<
ObjectSchema<{ type: ...; value: ... }, undefined>,
"Commands to trigger the UI",
>;
description: OptionalSchema<
NullableSchema<StringSchema<(...)>, "">,
undefined,
>;
devMain: StringSchema<
"URL to load in development to support live reload, e.g. http://localhost:5173/",
>;
dist: StringSchema<"Dist folder to load, e.g. dist, build, out">;
icon: OptionalSchema<
ObjectSchema<
{
bgColor: ...;
darkInvert: ...;
hexColor: ...;
invert: ...;
type: ...;
value: ...;
},
undefined,
>,
undefined,
>;
main: StringSchema<"HTML file to load, e.g. dist/index.html">;
name: StringSchema<"Name of the command">;
platforms: OptionalSchema<
ArraySchema<
PicklistSchema<(...), (...)>,
"Platforms available on. Leave empty for all platforms.",
>,
undefined,
>;
type: OptionalSchema<PicklistSchema<(...)[], undefined>, string>;
window: OptionalSchema<
NullableSchema<ObjectSchema<(...), (...)>, undefined>,
undefined,
>;
},
undefined,
>,
"Custom UI Commands",
>,
undefined,
>;
demoImages: ArraySchema<
StringSchema<"Demo images for the extension">,
undefined,
>;
headlessCmds: OptionalSchema<
ArraySchema<
ObjectSchema<
{
cmds: ArraySchema<
ObjectSchema<{ type: ...; value: ... }, undefined>,
"Commands to trigger the UI",
>;
description: OptionalSchema<
NullableSchema<StringSchema<(...)>, "">,
undefined,
>;
icon: OptionalSchema<
ObjectSchema<
{
bgColor: ...;
darkInvert: ...;
hexColor: ...;
invert: ...;
type: ...;
value: ...;
},
undefined,
>,
undefined,
>;
main: StringSchema<"HTML file to load, e.g. dist/index.html">;
name: StringSchema<"Name of the command">;
platforms: OptionalSchema<
ArraySchema<
PicklistSchema<(...), (...)>,
"Platforms available on. Leave empty for all platforms.",
>,
undefined,
>;
type: OptionalSchema<PicklistSchema<(...)[], undefined>, string>;
},
undefined,
>,
"Headless Commands",
>,
undefined,
>;
icon: ObjectSchema<
{
bgColor: OptionalSchema<StringSchema<undefined>, undefined>;
darkInvert: OptionalSchema<BooleanSchema<undefined>, undefined>;
hexColor: OptionalSchema<StringSchema<undefined>, undefined>;
invert: OptionalSchema<BooleanSchema<undefined>, undefined>;
type: PicklistSchema<string[], undefined>;
value: StringSchema<undefined>;
},
undefined,
>;
identifier: StringSchema<
"Unique identifier for the extension, must be the same as extension folder name",
>;
longDescription: StringSchema<
"Long description of the extension (Will be displayed in store)",
>;
name: StringSchema<"Name of the extension (Human Readable)">;
permissions: ArraySchema<
UnionSchema<
[
UnionSchema<
[
UnionSchema<[(...), (...)], undefined>,
UnionSchema<
[(...), (...), (...), (...), (...), (...), (...)],
undefined,
>,
UnionSchema<[(...)], undefined>,
],
undefined,
>,
ObjectSchema<
{
allow: OptionalSchema<ArraySchema<(...), (...)>, undefined>;
deny: OptionalSchema<ArraySchema<(...), (...)>, undefined>;
permission: UnionSchema<[(...), (...), (...), (...)], undefined>;
},
undefined,
>,
ObjectSchema<
{
allow: OptionalSchema<ArraySchema<(...), (...)>, undefined>;
deny: OptionalSchema<ArraySchema<(...), (...)>, undefined>;
permission: UnionSchema<[(...), (...), (...)], undefined>;
},
undefined,
>,
ObjectSchema<
{
allow: OptionalSchema<ArraySchema<(...), (...)>, undefined>;
deny: OptionalSchema<ArraySchema<(...), (...)>, undefined>;
permission: UnionSchema<
[(...), (...), (...), (...), (...)],
undefined,
>;
},
undefined,
>,
],
undefined,
>,
"Permissions Declared by the extension. e.g. clipboard-all. Not declared APIs will be blocked.",
>;
shortDescription: StringSchema<
"Description of the extension (Will be displayed in store)",
>;
templateUiCmds: OptionalSchema<
ArraySchema<
ObjectSchema<
{
cmds: ArraySchema<
ObjectSchema<{ type: ...; value: ... }, undefined>,
"Commands to trigger the UI",
>;
description: OptionalSchema<
NullableSchema<StringSchema<(...)>, "">,
undefined,
>;
icon: OptionalSchema<
ObjectSchema<
{
bgColor: ...;
darkInvert: ...;
hexColor: ...;
invert: ...;
type: ...;
value: ...;
},
undefined,
>,
undefined,
>;
main: StringSchema<"HTML file to load, e.g. dist/index.html">;
name: StringSchema<"Name of the command">;
platforms: OptionalSchema<
ArraySchema<
PicklistSchema<(...), (...)>,
"Platforms available on. Leave empty for all platforms.",
>,
undefined,
>;
type: OptionalSchema<PicklistSchema<(...)[], undefined>, string>;
window: OptionalSchema<
NullableSchema<ObjectSchema<(...), (...)>, undefined>,
undefined,
>;
},
undefined,
>,
"Template UI Commands",
>,
undefined,
>;
},
undefined,
>;
license: UnionSchema<
[
LiteralSchema<"AGPL-3.0-only", undefined>,
LiteralSchema<"Apache-2.0", undefined>,
LiteralSchema<"BSD-2-Clause", undefined>,
LiteralSchema<"BSD-3-Clause", undefined>,
LiteralSchema<"BSL-1.0", undefined>,
],
undefined,
>;
name: StringSchema<
"Package name for the extension (just a regular npm package name)",
>;
readme: OptionalSchema<
StringSchema<"Custom README.md path of the extension">,
undefined,
>;
repository: OptionalSchema<
UnionSchema<
[
StringSchema<"URL of the repository">,
ObjectSchema<
{
directory: OptionalSchema<
StringSchema<"Directory of the repository">,
undefined,
>;
type: StringSchema<"Type of the repository">;
url: StringSchema<"URL of the repository">;
},
undefined,
>,
],
undefined,
>,
undefined,
>;
version: StringSchema<"Version of the extension">;
},
undefined,
> = ...