core/types
Interfaces
Config
Defined in: venpm/src/core/types.ts:61
Properties
discord
discord: {
binary: string | null;
restart: RestartMode;
};Defined in: venpm/src/core/types.ts:68
binary
binary: string | null;Path to the Discord binary, or null to auto-detect
restart
restart: RestartMode;rebuild
rebuild: RebuildMode;Defined in: venpm/src/core/types.ts:67
repos
repos: RepoEntry[];Defined in: venpm/src/core/types.ts:62
vencord
vencord: {
path: string | null;
};Defined in: venpm/src/core/types.ts:63
path
path: string | null;Absolute path to the Vencord source checkout, or null if not yet configured
CreateOptions
Defined in: venpm/src/core/types.ts:206
Extends
Properties
config?
optional config?: string;Defined in: venpm/src/core/types.ts:191
Inherited from
force?
optional force?: boolean;Defined in: venpm/src/core/types.ts:208
json?
optional json?: boolean;Defined in: venpm/src/core/types.ts:193
Inherited from
output?
optional output?: string;Defined in: venpm/src/core/types.ts:207
verbose?
optional verbose?: boolean;Defined in: venpm/src/core/types.ts:192
Inherited from
FileSystem
Defined in: venpm/src/core/types.ts:119
Methods
copyDir()
copyDir(src, dest): Promise<void>;Defined in: venpm/src/core/types.ts:130
Parameters
| Parameter | Type |
|---|---|
src | string |
dest | string |
Returns
Promise<void>
exists()
exists(path): Promise<boolean>;Defined in: venpm/src/core/types.ts:122
Parameters
| Parameter | Type |
|---|---|
path | string |
Returns
Promise<boolean>
lstat()
lstat(path): Promise<{
isDirectory: boolean;
isFile: boolean;
isSymbolicLink: boolean;
}>;Defined in: venpm/src/core/types.ts:129
Parameters
| Parameter | Type |
|---|---|
path | string |
Returns
Promise<{ isDirectory: boolean; isFile: boolean; isSymbolicLink: boolean; }>
mkdir()
mkdir(path, options?): Promise<void>;Defined in: venpm/src/core/types.ts:123
Parameters
| Parameter | Type |
|---|---|
path | string |
options? | { recursive?: boolean; } |
options.recursive? | boolean |
Returns
Promise<void>
readdir()
readdir(path): Promise<string[]>;Defined in: venpm/src/core/types.ts:127
Parameters
| Parameter | Type |
|---|---|
path | string |
Returns
Promise<string[]>
readFile()
readFile(path, encoding): Promise<string>;Defined in: venpm/src/core/types.ts:120
Parameters
| Parameter | Type |
|---|---|
path | string |
encoding | BufferEncoding |
Returns
Promise<string>
readlink()
readlink(path): Promise<string>;Defined in: venpm/src/core/types.ts:126
Parameters
| Parameter | Type |
|---|---|
path | string |
Returns
Promise<string>
rm()
rm(path, options?): Promise<void>;Defined in: venpm/src/core/types.ts:124
Parameters
| Parameter | Type |
|---|---|
path | string |
options? | { force?: boolean; recursive?: boolean; } |
options.force? | boolean |
options.recursive? | boolean |
Returns
Promise<void>
stat()
stat(path): Promise<{
size: number;
isDirectory: boolean;
isFile: boolean;
}>;Defined in: venpm/src/core/types.ts:128
Parameters
| Parameter | Type |
|---|---|
path | string |
Returns
Promise<{ size: number; isDirectory: boolean; isFile: boolean; }>
symlink()
symlink(target, path): Promise<void>;Defined in: venpm/src/core/types.ts:125
Parameters
| Parameter | Type |
|---|---|
target | string |
path | string |
Returns
Promise<void>
writeFile()
writeFile(
path,
data,
encoding?): Promise<void>;Defined in: venpm/src/core/types.ts:121
Parameters
| Parameter | Type |
|---|---|
path | string |
data | string |
encoding? | BufferEncoding |
Returns
Promise<void>
GitClient
Defined in: venpm/src/core/types.ts:148
Methods
available()
available(): Promise<boolean>;Defined in: venpm/src/core/types.ts:149
Returns
Promise<boolean>
checkout()
checkout(repoPath, ref): Promise<void>;Defined in: venpm/src/core/types.ts:153
Parameters
| Parameter | Type |
|---|---|
repoPath | string |
ref | string |
Returns
Promise<void>
clone()
clone(
url,
dest,
options?): Promise<void>;Defined in: venpm/src/core/types.ts:150
Parameters
| Parameter | Type |
|---|---|
url | string |
dest | string |
options? | { branch?: string; depth?: number; sparse?: string[]; } |
options.branch? | string |
options.depth? | number |
options.sparse? | string[] |
Returns
Promise<void>
pull()
pull(repoPath): Promise<void>;Defined in: venpm/src/core/types.ts:151
Parameters
| Parameter | Type |
|---|---|
repoPath | string |
Returns
Promise<void>
revParse()
revParse(repoPath, ref): Promise<string>;Defined in: venpm/src/core/types.ts:152
Parameters
| Parameter | Type |
|---|---|
repoPath | string |
ref | string |
Returns
Promise<string>
GlobalOptions
Defined in: venpm/src/core/types.ts:190
Extended by
Properties
config?
optional config?: string;Defined in: venpm/src/core/types.ts:191
json?
optional json?: boolean;Defined in: venpm/src/core/types.ts:193
verbose?
optional verbose?: boolean;Defined in: venpm/src/core/types.ts:192
HttpClient
Defined in: venpm/src/core/types.ts:137
Methods
fetch()
fetch(url, options?): Promise<{
headers?: HttpResponseHeaders;
ok: boolean;
status: number;
arrayBuffer: Promise<ArrayBuffer>;
json: Promise<unknown>;
text: Promise<string>;
}>;Defined in: venpm/src/core/types.ts:138
Parameters
| Parameter | Type |
|---|---|
url | string |
options? | { headers?: Record<string, string>; } |
options.headers? | Record<string, string> |
Returns
Promise<{ headers?: HttpResponseHeaders; ok: boolean; status: number; arrayBuffer: Promise<ArrayBuffer>; json: Promise<unknown>; text: Promise<string>; }>
HttpResponseHeaders
Defined in: venpm/src/core/types.ts:133
Methods
get()
get(name): string | null;Defined in: venpm/src/core/types.ts:134
Parameters
| Parameter | Type |
|---|---|
name | string |
Returns
string | null
InstalledPlugin
Defined in: venpm/src/core/types.ts:79
Properties
git_ref?
optional git_ref?: string;Defined in: venpm/src/core/types.ts:85
Git commit hash (when method === "git")
installed_at
installed_at: string;Defined in: venpm/src/core/types.ts:86
method
method: FetchMethod;Defined in: venpm/src/core/types.ts:82
path?
optional path?: string;Defined in: venpm/src/core/types.ts:88
Override path relative to userplugins dir
pinned
pinned: boolean;Defined in: venpm/src/core/types.ts:83
repo
repo: string;Defined in: venpm/src/core/types.ts:81
version
version: string;Defined in: venpm/src/core/types.ts:80
InstallOptions
Defined in: venpm/src/core/types.ts:196
Extends
Properties
config?
optional config?: string;Defined in: venpm/src/core/types.ts:191
Inherited from
from?
optional from?: string;Defined in: venpm/src/core/types.ts:198
git?
optional git?: boolean;Defined in: venpm/src/core/types.ts:200
json?
optional json?: boolean;Defined in: venpm/src/core/types.ts:193
Inherited from
local?
optional local?: string;Defined in: venpm/src/core/types.ts:199
noBuild?
optional noBuild?: boolean;Defined in: venpm/src/core/types.ts:202
rebuild?
optional rebuild?: boolean;Defined in: venpm/src/core/types.ts:203
tarball?
optional tarball?: boolean;Defined in: venpm/src/core/types.ts:201
verbose?
optional verbose?: boolean;Defined in: venpm/src/core/types.ts:192
Inherited from
version?
optional version?: string;Defined in: venpm/src/core/types.ts:197
InstallPlan
Defined in: venpm/src/core/types.ts:111
Properties
entries
entries: InstallPlanEntry[];Defined in: venpm/src/core/types.ts:112
missingOptional?
optional missingOptional?: string[];Defined in: venpm/src/core/types.ts:114
Optional deps that aren't installed — surfaced as warnings
InstallPlanEntry
Defined in: venpm/src/core/types.ts:97
Properties
currentVersion?
optional currentVersion?: string;Defined in: venpm/src/core/types.ts:106
Current installed version, if upgrading
isDependency
isDependency: boolean;Defined in: venpm/src/core/types.ts:104
True if this entry was added to satisfy a dependency
method
method: FetchMethod;Defined in: venpm/src/core/types.ts:102
name
name: string;Defined in: venpm/src/core/types.ts:98
repo
repo: string;Defined in: venpm/src/core/types.ts:100
source
source: PluginSource;Defined in: venpm/src/core/types.ts:101
version
version: string;Defined in: venpm/src/core/types.ts:99
versionEntry?
optional versionEntry?: VersionEntry;Defined in: venpm/src/core/types.ts:108
Version metadata from the index (git_tag, tarball URL)
IOContext
Defined in: venpm/src/core/types.ts:179
Properties
fs
fs: FileSystem;Defined in: venpm/src/core/types.ts:180
git
git: GitClient;Defined in: venpm/src/core/types.ts:182
http
http: HttpClient;Defined in: venpm/src/core/types.ts:181
logger
logger: Logger;Defined in: venpm/src/core/types.ts:185
prompter
prompter: Prompter;Defined in: venpm/src/core/types.ts:184
shell
shell: ShellRunner;Defined in: venpm/src/core/types.ts:183
LockfileData
Defined in: venpm/src/core/types.ts:91
Properties
installed
installed: Record<string, InstalledPlugin>;Defined in: venpm/src/core/types.ts:92
Logger
Defined in: venpm/src/core/types.ts:171
Methods
error()
error(message): void;Defined in: venpm/src/core/types.ts:174
Parameters
| Parameter | Type |
|---|---|
message | string |
Returns
void
info()
info(message): void;Defined in: venpm/src/core/types.ts:172
Parameters
| Parameter | Type |
|---|---|
message | string |
Returns
void
success()
success(message): void;Defined in: venpm/src/core/types.ts:176
Parameters
| Parameter | Type |
|---|---|
message | string |
Returns
void
verbose()
verbose(message): void;Defined in: venpm/src/core/types.ts:175
Parameters
| Parameter | Type |
|---|---|
message | string |
Returns
void
warn()
warn(message): void;Defined in: venpm/src/core/types.ts:173
Parameters
| Parameter | Type |
|---|---|
message | string |
Returns
void
PluginAuthor
Defined in: venpm/src/core/types.ts:3
Properties
id
id: string;Defined in: venpm/src/core/types.ts:5
name
name: string;Defined in: venpm/src/core/types.ts:4
PluginEntry
Defined in: venpm/src/core/types.ts:25
Properties
authors
authors: PluginAuthor[];Defined in: venpm/src/core/types.ts:28
dependencies?
optional dependencies?: string[];Defined in: venpm/src/core/types.ts:30
description
description: string;Defined in: venpm/src/core/types.ts:27
discord?
optional discord?: string;Defined in: venpm/src/core/types.ts:33
Semver range for required Discord build
license?
optional license?: string;Defined in: venpm/src/core/types.ts:29
optionalDependencies?
optional optionalDependencies?: string[];Defined in: venpm/src/core/types.ts:31
source
source: PluginSource;Defined in: venpm/src/core/types.ts:36
vencord?
optional vencord?: string;Defined in: venpm/src/core/types.ts:35
Semver range for required Vencord version
version
version: string;Defined in: venpm/src/core/types.ts:26
versions?
optional versions?: Record<string, VersionEntry>;Defined in: venpm/src/core/types.ts:38
Named version history (version string → VersionEntry)
PluginIndex
Defined in: venpm/src/core/types.ts:41
Properties
description?
optional description?: string;Defined in: venpm/src/core/types.ts:43
name
name: string;Defined in: venpm/src/core/types.ts:42
plugins
plugins: Record<string, PluginEntry>;Defined in: venpm/src/core/types.ts:45
Plugin name → PluginEntry
PluginSource
Defined in: venpm/src/core/types.ts:9
Source location for a plugin — at least one of git/tarball must be present.
Properties
git?
optional git?: string;Defined in: venpm/src/core/types.ts:11
Git repository URL
local?
optional local?: string;Defined in: venpm/src/core/types.ts:17
Local filesystem path (for development / local repos)
path?
optional path?: string;Defined in: venpm/src/core/types.ts:13
Path within the git repo to the plugin folder
tarball?
optional tarball?: string;Defined in: venpm/src/core/types.ts:15
Direct tarball download URL
Prompter
Defined in: venpm/src/core/types.ts:165
Methods
confirm()
confirm(message, defaultValue?): Promise<boolean>;Defined in: venpm/src/core/types.ts:166
Parameters
| Parameter | Type |
|---|---|
message | string |
defaultValue? | boolean |
Returns
Promise<boolean>
input()
input(message, defaultValue?): Promise<string>;Defined in: venpm/src/core/types.ts:167
Parameters
| Parameter | Type |
|---|---|
message | string |
defaultValue? | string |
Returns
Promise<string>
select()
select<T>(message, choices): Promise<T>;Defined in: venpm/src/core/types.ts:168
Type Parameters
| Type Parameter |
|---|
T extends string |
Parameters
| Parameter | Type |
|---|---|
message | string |
choices | { label: string; value: T; }[] |
Returns
Promise<T>
RepoEntry
Defined in: venpm/src/core/types.ts:56
Properties
name
name: string;Defined in: venpm/src/core/types.ts:57
url
url: string;Defined in: venpm/src/core/types.ts:58
ShellRunner
Defined in: venpm/src/core/types.ts:156
Methods
exec()
exec(
cmd,
args,
options?): Promise<{
exitCode: number;
stderr: string;
stdout: string;
}>;Defined in: venpm/src/core/types.ts:157
Parameters
| Parameter | Type |
|---|---|
cmd | string |
args | string[] |
options? | { cwd?: string; env?: Record<string, string>; } |
options.cwd? | string |
options.env? | Record<string, string> |
Returns
Promise<{ exitCode: number; stderr: string; stdout: string; }>
spawn()
spawn(
cmd,
args,
options?): Promise<void>;Defined in: venpm/src/core/types.ts:162
Parameters
| Parameter | Type |
|---|---|
cmd | string |
args | string[] |
options? | { cwd?: string; detached?: boolean; env?: Record<string, string>; } |
options.cwd? | string |
options.detached? | boolean |
options.env? | Record<string, string> |
Returns
Promise<void>
ValidateOptions
Defined in: venpm/src/core/types.ts:211
Extends
Properties
config?
optional config?: string;Defined in: venpm/src/core/types.ts:191
Inherited from
json?
optional json?: boolean;Defined in: venpm/src/core/types.ts:193
Inherited from
strict?
optional strict?: boolean;Defined in: venpm/src/core/types.ts:212
verbose?
optional verbose?: boolean;Defined in: venpm/src/core/types.ts:192
Inherited from
VersionEntry
Defined in: venpm/src/core/types.ts:20
Properties
git_tag?
optional git_tag?: string;Defined in: venpm/src/core/types.ts:21
tarball?
optional tarball?: string;Defined in: venpm/src/core/types.ts:22
Type Aliases
FetchMethod
type FetchMethod = "git" | "tarball" | "local";Defined in: venpm/src/core/types.ts:77
RebuildMode
type RebuildMode = "ask" | "always" | "never";Defined in: venpm/src/core/types.ts:51
How venpm handles rebuilding Vencord after install/remove
RestartMode
type RestartMode = "ask" | "always" | "never";Defined in: venpm/src/core/types.ts:54
How venpm handles restarting Discord