@sylphx/management 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +138 -0
- package/dist/client.d.ts +41 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +91 -0
- package/dist/errors.d.ts +9 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +12 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +20 -0
- package/dist/request.d.ts +5 -0
- package/dist/request.d.ts.map +1 -0
- package/dist/request.js +1 -0
- package/dist/resources/config.d.ts +30 -0
- package/dist/resources/config.d.ts.map +1 -0
- package/dist/resources/config.js +62 -0
- package/dist/resources/databases.d.ts +26 -0
- package/dist/resources/databases.d.ts.map +1 -0
- package/dist/resources/databases.js +29 -0
- package/dist/resources/deployments.d.ts +24 -0
- package/dist/resources/deployments.d.ts.map +1 -0
- package/dist/resources/deployments.js +30 -0
- package/dist/resources/domains.d.ts +30 -0
- package/dist/resources/domains.d.ts.map +1 -0
- package/dist/resources/domains.js +46 -0
- package/dist/resources/env-vars.d.ts +19 -0
- package/dist/resources/env-vars.d.ts.map +1 -0
- package/dist/resources/env-vars.js +30 -0
- package/dist/resources/environments.d.ts +16 -0
- package/dist/resources/environments.d.ts.map +1 -0
- package/dist/resources/environments.js +24 -0
- package/dist/resources/logs.d.ts +13 -0
- package/dist/resources/logs.d.ts.map +1 -0
- package/dist/resources/logs.js +20 -0
- package/dist/resources/org.d.ts +15 -0
- package/dist/resources/org.d.ts.map +1 -0
- package/dist/resources/org.js +25 -0
- package/dist/resources/projects.d.ts +19 -0
- package/dist/resources/projects.d.ts.map +1 -0
- package/dist/resources/projects.js +19 -0
- package/dist/resources/resources.d.ts +26 -0
- package/dist/resources/resources.d.ts.map +1 -0
- package/dist/resources/resources.js +32 -0
- package/dist/resources/services.d.ts +21 -0
- package/dist/resources/services.d.ts.map +1 -0
- package/dist/resources/services.js +30 -0
- package/dist/resources/storage.d.ts +21 -0
- package/dist/resources/storage.d.ts.map +1 -0
- package/dist/resources/storage.js +25 -0
- package/dist/resources/tasks.d.ts +42 -0
- package/dist/resources/tasks.d.ts.map +1 -0
- package/dist/resources/tasks.js +49 -0
- package/dist/resources/user.d.ts +9 -0
- package/dist/resources/user.d.ts.map +1 -0
- package/dist/resources/user.js +10 -0
- package/dist/resources/volumes.d.ts +20 -0
- package/dist/resources/volumes.d.ts.map +1 -0
- package/dist/resources/volumes.js +19 -0
- package/dist/types.d.ts +269 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +4 -0
- package/package.json +32 -0
package/README.md
ADDED
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
# @sylphx/management
|
|
2
|
+
|
|
3
|
+
Programmatic access to the [Sylphx Platform](https://sylphx.com) Management API.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
bun add @sylphx/management
|
|
9
|
+
# or
|
|
10
|
+
npm install @sylphx/management
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Quick Start
|
|
14
|
+
|
|
15
|
+
```typescript
|
|
16
|
+
import { SylphxManagement } from '@sylphx/management'
|
|
17
|
+
|
|
18
|
+
const mgmt = new SylphxManagement({
|
|
19
|
+
token: process.env.SYLPHX_TOKEN!,
|
|
20
|
+
// baseUrl: 'https://api.sylphx.com' (default)
|
|
21
|
+
})
|
|
22
|
+
|
|
23
|
+
// List projects
|
|
24
|
+
const projects = await mgmt.projects.list()
|
|
25
|
+
|
|
26
|
+
// Trigger a deployment
|
|
27
|
+
await mgmt.deployments.trigger('my-project-id', 'production')
|
|
28
|
+
|
|
29
|
+
// List env vars
|
|
30
|
+
const vars = await mgmt.envVars.list('my-project-id', 'production')
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## API
|
|
34
|
+
|
|
35
|
+
All methods are namespaced under the `SylphxManagement` instance:
|
|
36
|
+
|
|
37
|
+
### `mgmt.user`
|
|
38
|
+
- `whoami()` — Get current user and orgs
|
|
39
|
+
|
|
40
|
+
### `mgmt.projects`
|
|
41
|
+
- `list()` — List all projects
|
|
42
|
+
- `create(data)` — Create a new project
|
|
43
|
+
- `delete(id)` — Delete a project
|
|
44
|
+
|
|
45
|
+
### `mgmt.deployments`
|
|
46
|
+
- `status(projectId)` — Get deployment status
|
|
47
|
+
- `trigger(projectId, envType)` — Trigger a deploy
|
|
48
|
+
- `history(projectId, envType)` — Get deployment history
|
|
49
|
+
- `rollback(projectId, body)` — Rollback to a previous deploy
|
|
50
|
+
|
|
51
|
+
### `mgmt.environments`
|
|
52
|
+
- `list(projectId)` — List environments
|
|
53
|
+
- `resolveId(projectId, envType)` — Resolve envType → envId
|
|
54
|
+
- `promote(projectId, targetEnvId, sourceEnvId)` — Promote an environment
|
|
55
|
+
|
|
56
|
+
### `mgmt.envVars`
|
|
57
|
+
- `list(projectId, envType)` — List env vars
|
|
58
|
+
- `set(projectId, key, value, envType, secret?)` — Set a single env var
|
|
59
|
+
- `setMany(projectId, vars, envType)` — Batch-set env vars
|
|
60
|
+
- `delete(projectId, key, envType)` — Delete an env var
|
|
61
|
+
|
|
62
|
+
### `mgmt.domains`
|
|
63
|
+
- `list(projectId, envType?)` — List apex domains
|
|
64
|
+
- `create(projectId, apexDomain, envType?)` — Register a domain
|
|
65
|
+
- `addHostname(projectId, domainId, hostname, opts?)` — Add a hostname
|
|
66
|
+
- `removeHostname(projectId, domainId, hostnameId)` — Remove a hostname
|
|
67
|
+
- `checkHostname(projectId, domainId, hostnameId)` — Check DNS for hostname
|
|
68
|
+
- `enableEmail(projectId, domainId, opts?)` — Enable email sending
|
|
69
|
+
- `checkEmail(projectId, domainId)` — Check email DNS propagation
|
|
70
|
+
- `disableEmail(projectId, domainId)` — Disable email sending
|
|
71
|
+
|
|
72
|
+
### `mgmt.databases`
|
|
73
|
+
- `list()` — List all databases
|
|
74
|
+
- `create(data)` — Provision a database
|
|
75
|
+
- `get(id)` — Get database details
|
|
76
|
+
- `delete(id)` — Delete a database
|
|
77
|
+
- `branch(id, data)` — Branch a database
|
|
78
|
+
|
|
79
|
+
### `mgmt.services`
|
|
80
|
+
- `list(projectId)` — List services
|
|
81
|
+
- `get(projectId, name)` — Get a service
|
|
82
|
+
- `deploy(projectId, name, envType)` — Deploy a service
|
|
83
|
+
- `delete(projectId, name)` — Delete a service
|
|
84
|
+
|
|
85
|
+
### `mgmt.volumes`
|
|
86
|
+
- `list(projectId)` — List volumes
|
|
87
|
+
- `create(projectId, data)` — Create a volume
|
|
88
|
+
- `delete(projectId, volId)` — Delete a volume
|
|
89
|
+
|
|
90
|
+
### `mgmt.storage`
|
|
91
|
+
- `list(projectId, envType?)` — List storage resources
|
|
92
|
+
- `create(projectId, data)` — Provision storage
|
|
93
|
+
- `delete(projectId, storageId)` — Delete storage
|
|
94
|
+
|
|
95
|
+
### `mgmt.config`
|
|
96
|
+
- `list(projectId, envType?)` — List config keys
|
|
97
|
+
- `get(projectId, key, envType?)` — Get a config key
|
|
98
|
+
- `set(projectId, key, value, envType?)` — Set a config key
|
|
99
|
+
- `delete(projectId, key, envType?)` — Delete a config key
|
|
100
|
+
|
|
101
|
+
### `mgmt.tasks`
|
|
102
|
+
- `list(projectId, envType?)` — List task definitions
|
|
103
|
+
- `create(projectId, data)` — Create/update a task
|
|
104
|
+
- `get(projectId, taskId)` — Get a task
|
|
105
|
+
- `update(projectId, taskId, data)` — Update a task
|
|
106
|
+
- `delete(projectId, taskId)` — Delete a task
|
|
107
|
+
|
|
108
|
+
### `mgmt.resources`
|
|
109
|
+
- `listBindings(resourceId)` — List resource bindings
|
|
110
|
+
- `bind(resourceId, data)` — Bind a resource to a project env
|
|
111
|
+
- `unbind(resourceId, bindingId)` — Unbind a resource
|
|
112
|
+
|
|
113
|
+
### `mgmt.org`
|
|
114
|
+
- `current()` — Get current org
|
|
115
|
+
- `listMembers(orgId)` — List org members
|
|
116
|
+
- `inviteMember(orgId, email, role)` — Invite a member
|
|
117
|
+
- `removeMember(orgId, userId)` — Remove a member
|
|
118
|
+
|
|
119
|
+
### `mgmt.logs`
|
|
120
|
+
- `stream(projectId, envType)` — Get `{ url, token }` for SSE log streaming
|
|
121
|
+
|
|
122
|
+
## Error Handling
|
|
123
|
+
|
|
124
|
+
```typescript
|
|
125
|
+
import { ManagementApiError } from '@sylphx/management'
|
|
126
|
+
|
|
127
|
+
try {
|
|
128
|
+
await mgmt.projects.delete('non-existent')
|
|
129
|
+
} catch (err) {
|
|
130
|
+
if (err instanceof ManagementApiError) {
|
|
131
|
+
console.error(`API Error ${err.status}: ${err.message}`)
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
## License
|
|
137
|
+
|
|
138
|
+
MIT
|
package/dist/client.d.ts
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { ConfigResource } from './resources/config.js';
|
|
2
|
+
import { DatabasesResource } from './resources/databases.js';
|
|
3
|
+
import { DeploymentsResource } from './resources/deployments.js';
|
|
4
|
+
import { DomainsResource } from './resources/domains.js';
|
|
5
|
+
import { EnvVarsResource } from './resources/env-vars.js';
|
|
6
|
+
import { EnvironmentsResource } from './resources/environments.js';
|
|
7
|
+
import { LogsResource } from './resources/logs.js';
|
|
8
|
+
import { OrgResource } from './resources/org.js';
|
|
9
|
+
import { ProjectsResource } from './resources/projects.js';
|
|
10
|
+
import { ResourceBindingsResource } from './resources/resources.js';
|
|
11
|
+
import { ServicesResource } from './resources/services.js';
|
|
12
|
+
import { StoragesResource } from './resources/storage.js';
|
|
13
|
+
import { TasksResource } from './resources/tasks.js';
|
|
14
|
+
import { UserResource } from './resources/user.js';
|
|
15
|
+
import { VolumesResource } from './resources/volumes.js';
|
|
16
|
+
export interface SylphxManagementOptions {
|
|
17
|
+
token: string;
|
|
18
|
+
/** Base URL for the API. Default: 'https://api.sylphx.com' */
|
|
19
|
+
baseUrl?: string;
|
|
20
|
+
/** User-Agent header value. Default: '@sylphx/management/1.0.0' */
|
|
21
|
+
userAgent?: string;
|
|
22
|
+
}
|
|
23
|
+
export declare class SylphxManagement {
|
|
24
|
+
readonly user: UserResource;
|
|
25
|
+
readonly projects: ProjectsResource;
|
|
26
|
+
readonly deployments: DeploymentsResource;
|
|
27
|
+
readonly environments: EnvironmentsResource;
|
|
28
|
+
readonly envVars: EnvVarsResource;
|
|
29
|
+
readonly domains: DomainsResource;
|
|
30
|
+
readonly databases: DatabasesResource;
|
|
31
|
+
readonly services: ServicesResource;
|
|
32
|
+
readonly volumes: VolumesResource;
|
|
33
|
+
readonly storage: StoragesResource;
|
|
34
|
+
readonly config: ConfigResource;
|
|
35
|
+
readonly tasks: TasksResource;
|
|
36
|
+
readonly resources: ResourceBindingsResource;
|
|
37
|
+
readonly org: OrgResource;
|
|
38
|
+
readonly logs: LogsResource;
|
|
39
|
+
constructor(options: SylphxManagementOptions);
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAA;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAExD,MAAM,WAAW,uBAAuB;IACvC,KAAK,EAAE,MAAM,CAAA;IACb,8DAA8D;IAC9D,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,mEAAmE;IACnE,SAAS,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,qBAAa,gBAAgB;IAC5B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAA;IACnC,QAAQ,CAAC,WAAW,EAAE,mBAAmB,CAAA;IACzC,QAAQ,CAAC,YAAY,EAAE,oBAAoB,CAAA;IAC3C,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;IACjC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;IACjC,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAA;IACrC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAA;IACnC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;IACjC,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAA;IAClC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAA;IAC/B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAA;IAC7B,QAAQ,CAAC,SAAS,EAAE,wBAAwB,CAAA;IAC5C,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAA;gBAEf,OAAO,EAAE,uBAAuB;CAwE5C"}
|
package/dist/client.js
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { ApiError } from './errors.js';
|
|
2
|
+
import { ConfigResource } from './resources/config.js';
|
|
3
|
+
import { DatabasesResource } from './resources/databases.js';
|
|
4
|
+
import { DeploymentsResource } from './resources/deployments.js';
|
|
5
|
+
import { DomainsResource } from './resources/domains.js';
|
|
6
|
+
import { EnvVarsResource } from './resources/env-vars.js';
|
|
7
|
+
import { EnvironmentsResource } from './resources/environments.js';
|
|
8
|
+
import { LogsResource } from './resources/logs.js';
|
|
9
|
+
import { OrgResource } from './resources/org.js';
|
|
10
|
+
import { ProjectsResource } from './resources/projects.js';
|
|
11
|
+
import { ResourceBindingsResource } from './resources/resources.js';
|
|
12
|
+
import { ServicesResource } from './resources/services.js';
|
|
13
|
+
import { StoragesResource } from './resources/storage.js';
|
|
14
|
+
import { TasksResource } from './resources/tasks.js';
|
|
15
|
+
import { UserResource } from './resources/user.js';
|
|
16
|
+
import { VolumesResource } from './resources/volumes.js';
|
|
17
|
+
export class SylphxManagement {
|
|
18
|
+
user;
|
|
19
|
+
projects;
|
|
20
|
+
deployments;
|
|
21
|
+
environments;
|
|
22
|
+
envVars;
|
|
23
|
+
domains;
|
|
24
|
+
databases;
|
|
25
|
+
services;
|
|
26
|
+
volumes;
|
|
27
|
+
storage;
|
|
28
|
+
config;
|
|
29
|
+
tasks;
|
|
30
|
+
resources;
|
|
31
|
+
org;
|
|
32
|
+
logs;
|
|
33
|
+
constructor(options) {
|
|
34
|
+
const baseUrl = options.baseUrl ?? 'https://api.sylphx.com';
|
|
35
|
+
const userAgent = options.userAgent ?? '@sylphx/management/1.0.0';
|
|
36
|
+
const apiBase = `${baseUrl}/v1`;
|
|
37
|
+
const request = async (method, path, opts) => {
|
|
38
|
+
let url = `${apiBase}${path}`;
|
|
39
|
+
if (opts?.query) {
|
|
40
|
+
const params = new URLSearchParams(opts.query);
|
|
41
|
+
url += `?${params.toString()}`;
|
|
42
|
+
}
|
|
43
|
+
const headers = {
|
|
44
|
+
Authorization: `Bearer ${options.token}`,
|
|
45
|
+
'Content-Type': 'application/json',
|
|
46
|
+
'User-Agent': userAgent,
|
|
47
|
+
};
|
|
48
|
+
const res = await fetch(url, {
|
|
49
|
+
method,
|
|
50
|
+
headers,
|
|
51
|
+
body: opts?.body ? JSON.stringify(opts.body) : undefined,
|
|
52
|
+
});
|
|
53
|
+
if (!res.ok) {
|
|
54
|
+
let body;
|
|
55
|
+
const text = await res.text();
|
|
56
|
+
try {
|
|
57
|
+
body = JSON.parse(text);
|
|
58
|
+
}
|
|
59
|
+
catch {
|
|
60
|
+
body = text;
|
|
61
|
+
}
|
|
62
|
+
const message = typeof body === 'object' && body !== null && 'message' in body
|
|
63
|
+
? String(body['message'])
|
|
64
|
+
: `HTTP ${res.status}`;
|
|
65
|
+
throw new ApiError(res.status, message, body);
|
|
66
|
+
}
|
|
67
|
+
if (res.status === 204) {
|
|
68
|
+
return undefined;
|
|
69
|
+
}
|
|
70
|
+
return res.json();
|
|
71
|
+
};
|
|
72
|
+
// Build resource instances — environments first since others depend on it
|
|
73
|
+
this.environments = new EnvironmentsResource(request);
|
|
74
|
+
this.user = new UserResource(request);
|
|
75
|
+
this.projects = new ProjectsResource(request);
|
|
76
|
+
this.deployments = new DeploymentsResource(request);
|
|
77
|
+
this.envVars = new EnvVarsResource(request);
|
|
78
|
+
this.domains = new DomainsResource(request);
|
|
79
|
+
this.databases = new DatabasesResource(request);
|
|
80
|
+
this.volumes = new VolumesResource(request);
|
|
81
|
+
this.storage = new StoragesResource(request);
|
|
82
|
+
this.org = new OrgResource(request);
|
|
83
|
+
// Resources that depend on environments for envType → envId resolution
|
|
84
|
+
this.services = new ServicesResource(request, this.environments);
|
|
85
|
+
this.config = new ConfigResource(request, this.environments);
|
|
86
|
+
this.tasks = new TasksResource(request, this.environments);
|
|
87
|
+
this.resources = new ResourceBindingsResource(request, this.environments);
|
|
88
|
+
// Logs resource gets baseUrl + token directly (SSE URL generation)
|
|
89
|
+
this.logs = new LogsResource(baseUrl, options.token);
|
|
90
|
+
}
|
|
91
|
+
}
|
package/dist/errors.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare class ApiError extends Error {
|
|
2
|
+
readonly status: number;
|
|
3
|
+
readonly body?: unknown | undefined;
|
|
4
|
+
constructor(status: number, message: string, body?: unknown | undefined);
|
|
5
|
+
}
|
|
6
|
+
/** @deprecated Use ApiError */
|
|
7
|
+
export declare const ManagementApiError: typeof ApiError;
|
|
8
|
+
export type ManagementApiError = ApiError;
|
|
9
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,QAAS,SAAQ,KAAK;aAEjB,MAAM,EAAE,MAAM;aAEd,IAAI,CAAC,EAAE,OAAO;gBAFd,MAAM,EAAE,MAAM,EAC9B,OAAO,EAAE,MAAM,EACC,IAAI,CAAC,EAAE,OAAO,YAAA;CAK/B;AAED,+BAA+B;AAC/B,eAAO,MAAM,kBAAkB,iBAAW,CAAA;AAC1C,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAA"}
|
package/dist/errors.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export class ApiError extends Error {
|
|
2
|
+
status;
|
|
3
|
+
body;
|
|
4
|
+
constructor(status, message, body) {
|
|
5
|
+
super(message);
|
|
6
|
+
this.status = status;
|
|
7
|
+
this.body = body;
|
|
8
|
+
this.name = 'ApiError';
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
/** @deprecated Use ApiError */
|
|
12
|
+
export const ManagementApiError = ApiError;
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export type { SylphxManagementOptions } from './client.js';
|
|
2
|
+
export { SylphxManagement } from './client.js';
|
|
3
|
+
export { ApiError, ManagementApiError } from './errors.js';
|
|
4
|
+
export type { RequestFn } from './request.js';
|
|
5
|
+
export { ConfigResource } from './resources/config.js';
|
|
6
|
+
export { DatabasesResource } from './resources/databases.js';
|
|
7
|
+
export { DeploymentsResource } from './resources/deployments.js';
|
|
8
|
+
export { DomainsResource } from './resources/domains.js';
|
|
9
|
+
export { EnvVarsResource } from './resources/env-vars.js';
|
|
10
|
+
export { EnvironmentsResource } from './resources/environments.js';
|
|
11
|
+
export { LogsResource } from './resources/logs.js';
|
|
12
|
+
export { OrgResource } from './resources/org.js';
|
|
13
|
+
export { ProjectsResource } from './resources/projects.js';
|
|
14
|
+
export { ResourceBindingsResource } from './resources/resources.js';
|
|
15
|
+
export { ServicesResource } from './resources/services.js';
|
|
16
|
+
export { StoragesResource } from './resources/storage.js';
|
|
17
|
+
export { TasksResource } from './resources/tasks.js';
|
|
18
|
+
export { UserResource } from './resources/user.js';
|
|
19
|
+
export { VolumesResource } from './resources/volumes.js';
|
|
20
|
+
export type { App, ConfigEntry, Database, DeploymentStatus, DeploymentStatusEnv, DeployResult, DnsRecord, Domain, DomainEmailBinding, DomainHostname, DomainResult, Environment, EnvVar, HostnameInstruction, LogEntry, LogStream, Org, OrgMember, Project, PromoteResult, ResourceBinding, Service, StorageResource, Task, Volume, WhoAmI, } from './types.js';
|
|
21
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,YAAY,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAG9C,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAG1D,YAAY,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAE7C,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAA;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAExD,YAAY,EACX,GAAG,EACH,WAAW,EACX,QAAQ,EACR,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,SAAS,EACT,MAAM,EACN,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,WAAW,EACX,MAAM,EACN,mBAAmB,EACnB,QAAQ,EACR,SAAS,EACT,GAAG,EACH,SAAS,EACT,OAAO,EACP,aAAa,EACb,eAAe,EACf,OAAO,EACP,eAAe,EACf,IAAI,EACJ,MAAM,EACN,MAAM,GACN,MAAM,YAAY,CAAA"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// Main client
|
|
2
|
+
export { SylphxManagement } from './client.js';
|
|
3
|
+
// Error class
|
|
4
|
+
export { ApiError, ManagementApiError } from './errors.js';
|
|
5
|
+
// Resource classes (for extensibility / type augmentation)
|
|
6
|
+
export { ConfigResource } from './resources/config.js';
|
|
7
|
+
export { DatabasesResource } from './resources/databases.js';
|
|
8
|
+
export { DeploymentsResource } from './resources/deployments.js';
|
|
9
|
+
export { DomainsResource } from './resources/domains.js';
|
|
10
|
+
export { EnvVarsResource } from './resources/env-vars.js';
|
|
11
|
+
export { EnvironmentsResource } from './resources/environments.js';
|
|
12
|
+
export { LogsResource } from './resources/logs.js';
|
|
13
|
+
export { OrgResource } from './resources/org.js';
|
|
14
|
+
export { ProjectsResource } from './resources/projects.js';
|
|
15
|
+
export { ResourceBindingsResource } from './resources/resources.js';
|
|
16
|
+
export { ServicesResource } from './resources/services.js';
|
|
17
|
+
export { StoragesResource } from './resources/storage.js';
|
|
18
|
+
export { TasksResource } from './resources/tasks.js';
|
|
19
|
+
export { UserResource } from './resources/user.js';
|
|
20
|
+
export { VolumesResource } from './resources/volumes.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../src/request.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,EACzB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;IACT,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC9B,KACG,OAAO,CAAC,CAAC,CAAC,CAAA"}
|
package/dist/request.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { RequestFn } from '../request.js';
|
|
2
|
+
import type { ConfigEntry } from '../types.js';
|
|
3
|
+
import type { EnvironmentsResource } from './environments.js';
|
|
4
|
+
export declare class ConfigResource {
|
|
5
|
+
private readonly request;
|
|
6
|
+
private readonly environments;
|
|
7
|
+
constructor(request: RequestFn, environments: EnvironmentsResource);
|
|
8
|
+
/**
|
|
9
|
+
* List all config keys for a project.
|
|
10
|
+
* Backend uses ?env=<envId> (not ?envType). Resolves envType → envId automatically.
|
|
11
|
+
*/
|
|
12
|
+
list(projectId: string, envType?: string): Promise<ConfigEntry[]>;
|
|
13
|
+
/**
|
|
14
|
+
* Get a single config key.
|
|
15
|
+
* Backend uses ?env=<envId> (not ?envType). Resolves envType → envId automatically.
|
|
16
|
+
*/
|
|
17
|
+
get(projectId: string, key: string, envType?: string): Promise<ConfigEntry>;
|
|
18
|
+
/**
|
|
19
|
+
* Set a config key.
|
|
20
|
+
* Backend expects { key, value, environmentId } (not envType).
|
|
21
|
+
* Resolves envType → environmentId automatically when envType is provided.
|
|
22
|
+
*/
|
|
23
|
+
set(projectId: string, key: string, value: string, envType?: string): Promise<ConfigEntry>;
|
|
24
|
+
/**
|
|
25
|
+
* Delete a config key.
|
|
26
|
+
* Backend uses ?env=<envId> (not ?envType). Resolves envType → envId automatically.
|
|
27
|
+
*/
|
|
28
|
+
delete(projectId: string, key: string, envType?: string): Promise<void>;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/resources/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAE7D,qBAAa,cAAc;IAEzB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,YAAY;gBADZ,OAAO,EAAE,SAAS,EAClB,YAAY,EAAE,oBAAoB;IAGpD;;;OAGG;IACG,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAcvE;;;OAGG;IACG,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAajF;;;;OAIG;IACG,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAUhG;;;OAGG;IACG,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAY7E"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
export class ConfigResource {
|
|
2
|
+
request;
|
|
3
|
+
environments;
|
|
4
|
+
constructor(request, environments) {
|
|
5
|
+
this.request = request;
|
|
6
|
+
this.environments = environments;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* List all config keys for a project.
|
|
10
|
+
* Backend uses ?env=<envId> (not ?envType). Resolves envType → envId automatically.
|
|
11
|
+
*/
|
|
12
|
+
async list(projectId, envType) {
|
|
13
|
+
const query = {};
|
|
14
|
+
if (envType) {
|
|
15
|
+
const envId = await this.environments.resolveId(projectId, envType);
|
|
16
|
+
if (envId)
|
|
17
|
+
query['env'] = envId;
|
|
18
|
+
}
|
|
19
|
+
const res = await this.request('GET', `/projects/${encodeURIComponent(projectId)}/config`, { query });
|
|
20
|
+
return Array.isArray(res) ? res : (res.data ?? []);
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Get a single config key.
|
|
24
|
+
* Backend uses ?env=<envId> (not ?envType). Resolves envType → envId automatically.
|
|
25
|
+
*/
|
|
26
|
+
async get(projectId, key, envType) {
|
|
27
|
+
const query = {};
|
|
28
|
+
if (envType) {
|
|
29
|
+
const envId = await this.environments.resolveId(projectId, envType);
|
|
30
|
+
if (envId)
|
|
31
|
+
query['env'] = envId;
|
|
32
|
+
}
|
|
33
|
+
return this.request('GET', `/projects/${encodeURIComponent(projectId)}/config/${encodeURIComponent(key)}`, { query });
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Set a config key.
|
|
37
|
+
* Backend expects { key, value, environmentId } (not envType).
|
|
38
|
+
* Resolves envType → environmentId automatically when envType is provided.
|
|
39
|
+
*/
|
|
40
|
+
async set(projectId, key, value, envType) {
|
|
41
|
+
let environmentId = null;
|
|
42
|
+
if (envType) {
|
|
43
|
+
environmentId = await this.environments.resolveId(projectId, envType);
|
|
44
|
+
}
|
|
45
|
+
return this.request('POST', `/projects/${encodeURIComponent(projectId)}/config`, {
|
|
46
|
+
body: { key, value, environmentId },
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Delete a config key.
|
|
51
|
+
* Backend uses ?env=<envId> (not ?envType). Resolves envType → envId automatically.
|
|
52
|
+
*/
|
|
53
|
+
async delete(projectId, key, envType) {
|
|
54
|
+
const query = {};
|
|
55
|
+
if (envType) {
|
|
56
|
+
const envId = await this.environments.resolveId(projectId, envType);
|
|
57
|
+
if (envId)
|
|
58
|
+
query['env'] = envId;
|
|
59
|
+
}
|
|
60
|
+
return this.request('DELETE', `/projects/${encodeURIComponent(projectId)}/config/${encodeURIComponent(key)}`, { query });
|
|
61
|
+
}
|
|
62
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { RequestFn } from '../request.js';
|
|
2
|
+
import type { Database } from '../types.js';
|
|
3
|
+
export declare class DatabasesResource {
|
|
4
|
+
private readonly request;
|
|
5
|
+
constructor(request: RequestFn);
|
|
6
|
+
/** List all databases (via unified Resources API) */
|
|
7
|
+
list(): Promise<Database[]>;
|
|
8
|
+
/** Provision a new database (via unified Resources API) */
|
|
9
|
+
create(data: {
|
|
10
|
+
name: string;
|
|
11
|
+
env: string;
|
|
12
|
+
tier: string;
|
|
13
|
+
storageGb: number;
|
|
14
|
+
}): Promise<Database>;
|
|
15
|
+
/** Get database details (via unified Resources API) */
|
|
16
|
+
get(id: string): Promise<Database>;
|
|
17
|
+
/** Delete a database (via unified Resources API) */
|
|
18
|
+
delete(id: string): Promise<void>;
|
|
19
|
+
/** Branch a database for staging/preview (via unified Resources API) */
|
|
20
|
+
branch(id: string, data: {
|
|
21
|
+
name: string;
|
|
22
|
+
env: string;
|
|
23
|
+
fast?: boolean;
|
|
24
|
+
}): Promise<Database>;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=databases.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"databases.d.ts","sourceRoot":"","sources":["../../src/resources/databases.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAE3C,qBAAa,iBAAiB;IACjB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,SAAS;IAE/C,qDAAqD;IAC/C,IAAI,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IASjC,2DAA2D;IACrD,MAAM,CAAC,IAAI,EAAE;QAClB,IAAI,EAAE,MAAM,CAAA;QACZ,GAAG,EAAE,MAAM,CAAA;QACX,IAAI,EAAE,MAAM,CAAA;QACZ,SAAS,EAAE,MAAM,CAAA;KACjB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIrB,uDAAuD;IACjD,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIxC,oDAAoD;IAC9C,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvC,wEAAwE;IAClE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,QAAQ,CAAC;CAKhG"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export class DatabasesResource {
|
|
2
|
+
request;
|
|
3
|
+
constructor(request) {
|
|
4
|
+
this.request = request;
|
|
5
|
+
}
|
|
6
|
+
/** List all databases (via unified Resources API) */
|
|
7
|
+
async list() {
|
|
8
|
+
const res = await this.request('GET', '/resources', { query: { kind: 'database' } });
|
|
9
|
+
return Array.isArray(res) ? res : (res.data ?? []);
|
|
10
|
+
}
|
|
11
|
+
/** Provision a new database (via unified Resources API) */
|
|
12
|
+
async create(data) {
|
|
13
|
+
return this.request('POST', '/resources', { body: { ...data, kind: 'database' } });
|
|
14
|
+
}
|
|
15
|
+
/** Get database details (via unified Resources API) */
|
|
16
|
+
async get(id) {
|
|
17
|
+
return this.request('GET', `/resources/${encodeURIComponent(id)}`);
|
|
18
|
+
}
|
|
19
|
+
/** Delete a database (via unified Resources API) */
|
|
20
|
+
async delete(id) {
|
|
21
|
+
return this.request('DELETE', `/resources/${encodeURIComponent(id)}`);
|
|
22
|
+
}
|
|
23
|
+
/** Branch a database for staging/preview (via unified Resources API) */
|
|
24
|
+
async branch(id, data) {
|
|
25
|
+
return this.request('POST', `/resources/${encodeURIComponent(id)}/branch`, {
|
|
26
|
+
body: data,
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { RequestFn } from '../request.js';
|
|
2
|
+
import type { DeploymentStatus, DeployResult } from '../types.js';
|
|
3
|
+
export declare class DeploymentsResource {
|
|
4
|
+
private readonly request;
|
|
5
|
+
constructor(request: RequestFn);
|
|
6
|
+
/** Get deployment status for a project */
|
|
7
|
+
status(projectId: string): Promise<DeploymentStatus>;
|
|
8
|
+
/** Trigger a deploy for a project environment */
|
|
9
|
+
trigger(projectId: string, envType: string): Promise<DeployResult>;
|
|
10
|
+
/** Get deployment history for a project environment */
|
|
11
|
+
history(projectId: string, envType: string): Promise<DeployResult[]>;
|
|
12
|
+
/**
|
|
13
|
+
* Rollback to a previous deployment.
|
|
14
|
+
* Accepts envId (rollback env to previous deploy), deploymentRecordId, or buildRecordId.
|
|
15
|
+
* One of these is required.
|
|
16
|
+
*/
|
|
17
|
+
rollback(projectId: string, body: {
|
|
18
|
+
envId?: string;
|
|
19
|
+
deploymentRecordId?: string;
|
|
20
|
+
buildRecordId?: string;
|
|
21
|
+
serviceId?: string;
|
|
22
|
+
}): Promise<DeployResult>;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=deployments.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployments.d.ts","sourceRoot":"","sources":["../../src/resources/deployments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAEjE,qBAAa,mBAAmB;IACnB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,SAAS;IAE/C,0CAA0C;IACpC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAI1D,iDAAiD;IAC3C,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAMxE,uDAAuD;IACjD,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAM1E;;;;OAIG;IACG,QAAQ,CACb,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE;QACL,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,kBAAkB,CAAC,EAAE,MAAM,CAAA;QAC3B,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB,SAAS,CAAC,EAAE,MAAM,CAAA;KAClB,GACC,OAAO,CAAC,YAAY,CAAC;CAGxB"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export class DeploymentsResource {
|
|
2
|
+
request;
|
|
3
|
+
constructor(request) {
|
|
4
|
+
this.request = request;
|
|
5
|
+
}
|
|
6
|
+
/** Get deployment status for a project */
|
|
7
|
+
async status(projectId) {
|
|
8
|
+
return this.request('GET', `/projects/${projectId}/status`);
|
|
9
|
+
}
|
|
10
|
+
/** Trigger a deploy for a project environment */
|
|
11
|
+
async trigger(projectId, envType) {
|
|
12
|
+
return this.request('POST', `/projects/${projectId}/deploy`, {
|
|
13
|
+
body: { envType },
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
/** Get deployment history for a project environment */
|
|
17
|
+
async history(projectId, envType) {
|
|
18
|
+
return this.request('GET', `/projects/${projectId}/deployments`, {
|
|
19
|
+
query: { envType },
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Rollback to a previous deployment.
|
|
24
|
+
* Accepts envId (rollback env to previous deploy), deploymentRecordId, or buildRecordId.
|
|
25
|
+
* One of these is required.
|
|
26
|
+
*/
|
|
27
|
+
async rollback(projectId, body) {
|
|
28
|
+
return this.request('POST', `/projects/${projectId}/rollback`, { body });
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { RequestFn } from '../request.js';
|
|
2
|
+
import type { DomainEmailBinding, DomainHostname, DomainResult } from '../types.js';
|
|
3
|
+
export declare class DomainsResource {
|
|
4
|
+
private readonly request;
|
|
5
|
+
constructor(request: RequestFn);
|
|
6
|
+
/** List all apex domains for a project environment */
|
|
7
|
+
list(projectId: string, envType?: string): Promise<DomainResult[]>;
|
|
8
|
+
/** Register an apex domain for a project (full domain object with DNS records) */
|
|
9
|
+
create(projectId: string, apexDomain: string, envType?: string): Promise<DomainResult>;
|
|
10
|
+
/** Add a hostname binding to an existing domain */
|
|
11
|
+
addHostname(projectId: string, domainId: string, hostname: string, opts?: {
|
|
12
|
+
isPrimary?: boolean;
|
|
13
|
+
redirectTo?: string;
|
|
14
|
+
envType?: string;
|
|
15
|
+
}): Promise<DomainHostname>;
|
|
16
|
+
/** Remove a hostname binding */
|
|
17
|
+
removeHostname(projectId: string, domainId: string, hostnameId: string): Promise<void>;
|
|
18
|
+
/** Trigger DNS check for a hostname */
|
|
19
|
+
checkHostname(projectId: string, domainId: string, hostnameId: string): Promise<DomainHostname>;
|
|
20
|
+
/** Enable email sending for a domain (generates DKIM keypair) */
|
|
21
|
+
enableEmail(projectId: string, domainId: string, opts?: {
|
|
22
|
+
defaultFromEmail?: string;
|
|
23
|
+
defaultFromName?: string;
|
|
24
|
+
}): Promise<DomainEmailBinding>;
|
|
25
|
+
/** Check DKIM DNS propagation and load into Stalwart */
|
|
26
|
+
checkEmail(projectId: string, domainId: string): Promise<DomainEmailBinding>;
|
|
27
|
+
/** Disable email sending for a domain */
|
|
28
|
+
disableEmail(projectId: string, domainId: string): Promise<void>;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=domains.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"domains.d.ts","sourceRoot":"","sources":["../../src/resources/domains.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAEnF,qBAAa,eAAe;IACf,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,SAAS;IAE/C,sDAAsD;IAChD,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,SAAe,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAM9E,kFAAkF;IAC5E,MAAM,CACX,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,OAAO,SAAe,GACpB,OAAO,CAAC,YAAY,CAAC;IAMxB,mDAAmD;IAC7C,WAAW,CAChB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GACnE,OAAO,CAAC,cAAc,CAAC;IAY1B,gCAAgC;IAC1B,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO5F,uCAAuC;IACjC,aAAa,CAClB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GAChB,OAAO,CAAC,cAAc,CAAC;IAO1B,iEAAiE;IAC3D,WAAW,CAChB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,MAAM,CAAA;KAAE,GAC5D,OAAO,CAAC,kBAAkB,CAAC;IAQ9B,wDAAwD;IAClD,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAOlF,yCAAyC;IACnC,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGtE"}
|