@hasna/domains 0.0.1

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.
Files changed (45) hide show
  1. package/README.md +119 -0
  2. package/dist/cli/commands/alerts.d.ts +3 -0
  3. package/dist/cli/commands/alerts.d.ts.map +1 -0
  4. package/dist/cli/commands/brandsight.d.ts +3 -0
  5. package/dist/cli/commands/brandsight.d.ts.map +1 -0
  6. package/dist/cli/commands/dns.d.ts +3 -0
  7. package/dist/cli/commands/dns.d.ts.map +1 -0
  8. package/dist/cli/commands/domains.d.ts +3 -0
  9. package/dist/cli/commands/domains.d.ts.map +1 -0
  10. package/dist/cli/commands/providers.d.ts +3 -0
  11. package/dist/cli/commands/providers.d.ts.map +1 -0
  12. package/dist/cli/index.d.ts +3 -0
  13. package/dist/cli/index.d.ts.map +1 -0
  14. package/dist/cli/index.js +13793 -0
  15. package/dist/db/alerts.d.ts +21 -0
  16. package/dist/db/alerts.d.ts.map +1 -0
  17. package/dist/db/database.d.ts +7 -0
  18. package/dist/db/database.d.ts.map +1 -0
  19. package/dist/db/dns-records.d.ts +46 -0
  20. package/dist/db/dns-records.d.ts.map +1 -0
  21. package/dist/db/dns-tools.d.ts +62 -0
  22. package/dist/db/dns-tools.d.ts.map +1 -0
  23. package/dist/db/domain-records.d.ts +97 -0
  24. package/dist/db/domain-records.d.ts.map +1 -0
  25. package/dist/db/domains.d.ts +17 -0
  26. package/dist/db/domains.d.ts.map +1 -0
  27. package/dist/db/migrations.d.ts +7 -0
  28. package/dist/db/migrations.d.ts.map +1 -0
  29. package/dist/db/monitoring.d.ts +25 -0
  30. package/dist/db/monitoring.d.ts.map +1 -0
  31. package/dist/index.d.ts +9 -0
  32. package/dist/index.d.ts.map +1 -0
  33. package/dist/index.js +10376 -0
  34. package/dist/lib/brandsight.d.ts +55 -0
  35. package/dist/lib/brandsight.d.ts.map +1 -0
  36. package/dist/lib/godaddy.d.ts +70 -0
  37. package/dist/lib/godaddy.d.ts.map +1 -0
  38. package/dist/lib/namecheap.d.ts +89 -0
  39. package/dist/lib/namecheap.d.ts.map +1 -0
  40. package/dist/lib/registrar.d.ts +71 -0
  41. package/dist/lib/registrar.d.ts.map +1 -0
  42. package/dist/mcp/index.d.ts +3 -0
  43. package/dist/mcp/index.d.ts.map +1 -0
  44. package/dist/mcp/index.js +15499 -0
  45. package/package.json +71 -0
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Alert types and CRUD operations
3
+ */
4
+ export interface Alert {
5
+ id: string;
6
+ domain_id: string;
7
+ type: "expiry" | "ssl_expiry" | "dns_change";
8
+ trigger_days_before: number | null;
9
+ sent_at: string | null;
10
+ created_at: string;
11
+ }
12
+ export interface CreateAlertInput {
13
+ domain_id: string;
14
+ type: Alert["type"];
15
+ trigger_days_before?: number;
16
+ }
17
+ export declare function createAlert(input: CreateAlertInput): Alert;
18
+ export declare function getAlert(id: string): Alert | null;
19
+ export declare function listAlerts(domainId: string): Alert[];
20
+ export declare function deleteAlert(id: string): boolean;
21
+ //# sourceMappingURL=alerts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alerts.d.ts","sourceRoot":"","sources":["../../src/db/alerts.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,GAAG,YAAY,GAAG,YAAY,CAAC;IAC7C,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;CACpB;AAsBD,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACpB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,KAAK,CAU1D;AAED,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI,CAIjD;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,KAAK,EAAE,CAMpD;AAED,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAI/C"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Database connection for open-domains
3
+ */
4
+ import type { Database } from "bun:sqlite";
5
+ export declare function getDatabase(): Database;
6
+ export declare function closeDatabase(): void;
7
+ //# sourceMappingURL=database.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/db/database.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAiB3C,wBAAgB,WAAW,IAAI,QAAQ,CA8CtC;AAED,wBAAgB,aAAa,IAAI,IAAI,CAKpC"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * DNS record types and CRUD operations
3
+ */
4
+ export interface DnsRecord {
5
+ id: string;
6
+ domain_id: string;
7
+ type: "A" | "AAAA" | "CNAME" | "MX" | "TXT" | "NS" | "SRV";
8
+ name: string;
9
+ value: string;
10
+ ttl: number;
11
+ priority: number | null;
12
+ created_at: string;
13
+ }
14
+ interface DnsRecordRow {
15
+ id: string;
16
+ domain_id: string;
17
+ type: string;
18
+ name: string;
19
+ value: string;
20
+ ttl: number;
21
+ priority: number | null;
22
+ created_at: string;
23
+ }
24
+ export declare function rowToDnsRecord(row: DnsRecordRow): DnsRecord;
25
+ export interface CreateDnsRecordInput {
26
+ domain_id: string;
27
+ type: DnsRecord["type"];
28
+ name: string;
29
+ value: string;
30
+ ttl?: number;
31
+ priority?: number;
32
+ }
33
+ export declare function createDnsRecord(input: CreateDnsRecordInput): DnsRecord;
34
+ export declare function getDnsRecord(id: string): DnsRecord | null;
35
+ export declare function listDnsRecords(domainId: string, type?: DnsRecord["type"]): DnsRecord[];
36
+ export interface UpdateDnsRecordInput {
37
+ type?: DnsRecord["type"];
38
+ name?: string;
39
+ value?: string;
40
+ ttl?: number;
41
+ priority?: number;
42
+ }
43
+ export declare function updateDnsRecord(id: string, input: UpdateDnsRecordInput): DnsRecord | null;
44
+ export declare function deleteDnsRecord(id: string): boolean;
45
+ export {};
46
+ //# sourceMappingURL=dns-records.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dns-records.d.ts","sourceRoot":"","sources":["../../src/db/dns-records.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,GAAG,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC;IAC3D,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,YAAY;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,YAAY,GAAG,SAAS,CAK3D;AAMD,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,SAAS,CAkBtE;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAIzD;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,GAAG,SAAS,EAAE,CActF;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB,GAAG,SAAS,GAAG,IAAI,CAsCzF;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAInD"}
@@ -0,0 +1,62 @@
1
+ /**
2
+ * DNS tools: WHOIS lookup, DNS propagation, SSL check, zone file import/export,
3
+ * subdomain discovery, and DNS validation
4
+ */
5
+ import { type DnsRecord } from "./dns-records.js";
6
+ export interface WhoisResult {
7
+ domain: string;
8
+ registrar: string | null;
9
+ expires_at: string | null;
10
+ nameservers: string[];
11
+ raw: string;
12
+ }
13
+ export declare function whoisLookup(domainName: string): WhoisResult;
14
+ export interface DnsPropagationResult {
15
+ domain: string;
16
+ record_type: string;
17
+ servers: {
18
+ server: string;
19
+ name: string;
20
+ values: string[];
21
+ status: "ok" | "error";
22
+ error?: string;
23
+ }[];
24
+ consistent: boolean;
25
+ }
26
+ export declare function checkDnsPropagation(domain: string, recordType?: string): DnsPropagationResult;
27
+ export interface SslCheckResult {
28
+ domain: string;
29
+ issuer: string | null;
30
+ expires_at: string | null;
31
+ subject: string | null;
32
+ error?: string;
33
+ }
34
+ export declare function checkSsl(domainName: string): SslCheckResult;
35
+ export declare function exportZoneFile(domainId: string): string | null;
36
+ export interface ZoneImportResult {
37
+ imported: number;
38
+ skipped: number;
39
+ errors: string[];
40
+ records: DnsRecord[];
41
+ }
42
+ export declare function importZoneFile(domainId: string, content: string): ZoneImportResult | null;
43
+ export interface SubdomainResult {
44
+ domain: string;
45
+ subdomains: string[];
46
+ source: string;
47
+ error?: string;
48
+ }
49
+ export declare function discoverSubdomains(domain: string): Promise<SubdomainResult>;
50
+ export interface DnsValidationIssue {
51
+ type: "error" | "warning";
52
+ record_id?: string;
53
+ message: string;
54
+ }
55
+ export interface DnsValidationResult {
56
+ domain_id: string;
57
+ domain_name: string;
58
+ issues: DnsValidationIssue[];
59
+ valid: boolean;
60
+ }
61
+ export declare function validateDns(domainId: string): DnsValidationResult | null;
62
+ //# sourceMappingURL=dns-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dns-tools.d.ts","sourceRoot":"","sources":["../../src/db/dns-tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAmC,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAMnF,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,CA6C3D;AAcD,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC;QACvB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,EAAE,CAAC;IACJ,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,UAAU,GAAE,MAAY,GACvB,oBAAoB,CAuCtB;AAMD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,cAAc,CA2C3D;AAMD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAwB9D;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,SAAS,EAAE,CAAC;CACtB;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAqFzF;AAMD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CA0CjF;AAMD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,CA8FxE"}
@@ -0,0 +1,97 @@
1
+ /**
2
+ * Domain record types and CRUD operations
3
+ */
4
+ export interface Domain {
5
+ id: string;
6
+ name: string;
7
+ registrar: string | null;
8
+ status: "active" | "expired" | "transferring" | "redemption";
9
+ registered_at: string | null;
10
+ expires_at: string | null;
11
+ auto_renew: boolean;
12
+ nameservers: string[];
13
+ whois: Record<string, unknown>;
14
+ ssl_expires_at: string | null;
15
+ ssl_issuer: string | null;
16
+ notes: string | null;
17
+ metadata: Record<string, unknown>;
18
+ created_at: string;
19
+ updated_at: string;
20
+ }
21
+ interface DomainRow {
22
+ id: string;
23
+ name: string;
24
+ registrar: string | null;
25
+ status: string;
26
+ registered_at: string | null;
27
+ expires_at: string | null;
28
+ auto_renew: number;
29
+ nameservers: string;
30
+ whois: string;
31
+ ssl_expires_at: string | null;
32
+ ssl_issuer: string | null;
33
+ notes: string | null;
34
+ metadata: string;
35
+ created_at: string;
36
+ updated_at: string;
37
+ }
38
+ export declare function rowToDomain(row: DomainRow): Domain;
39
+ export interface CreateDomainInput {
40
+ name: string;
41
+ registrar?: string;
42
+ status?: Domain["status"];
43
+ registered_at?: string;
44
+ expires_at?: string;
45
+ auto_renew?: boolean;
46
+ nameservers?: string[];
47
+ whois?: Record<string, unknown>;
48
+ ssl_expires_at?: string;
49
+ ssl_issuer?: string;
50
+ notes?: string;
51
+ metadata?: Record<string, unknown>;
52
+ }
53
+ export declare function createDomain(input: CreateDomainInput): Domain;
54
+ export declare function getDomain(id: string): Domain | null;
55
+ export interface ListDomainsOptions {
56
+ search?: string;
57
+ status?: Domain["status"];
58
+ registrar?: string;
59
+ limit?: number;
60
+ offset?: number;
61
+ }
62
+ export declare function listDomains(options?: ListDomainsOptions): Domain[];
63
+ export interface UpdateDomainInput {
64
+ name?: string;
65
+ registrar?: string;
66
+ status?: Domain["status"];
67
+ registered_at?: string;
68
+ expires_at?: string;
69
+ auto_renew?: boolean;
70
+ nameservers?: string[];
71
+ whois?: Record<string, unknown>;
72
+ ssl_expires_at?: string;
73
+ ssl_issuer?: string;
74
+ notes?: string;
75
+ metadata?: Record<string, unknown>;
76
+ }
77
+ export declare function updateDomain(id: string, input: UpdateDomainInput): Domain | null;
78
+ export declare function deleteDomain(id: string): boolean;
79
+ export declare function countDomains(): number;
80
+ export declare function searchDomains(query: string): Domain[];
81
+ export declare function getByRegistrar(registrar: string): Domain[];
82
+ export declare function listExpiring(days: number): Domain[];
83
+ export declare function listSslExpiring(days: number): Domain[];
84
+ export interface DomainStats {
85
+ total: number;
86
+ active: number;
87
+ expired: number;
88
+ transferring: number;
89
+ redemption: number;
90
+ auto_renew_enabled: number;
91
+ expiring_30_days: number;
92
+ ssl_expiring_30_days: number;
93
+ }
94
+ export declare function getDomainStats(): DomainStats;
95
+ export declare function getDomainByName(name: string): Domain | null;
96
+ export {};
97
+ //# sourceMappingURL=domain-records.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domain-records.d.ts","sourceRoot":"","sources":["../../src/db/domain-records.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Domain, DNS record, and alert CRUD operations
3
+ *
4
+ * This file re-exports everything from the individual modules so that
5
+ * existing imports continue to work without changes.
6
+ */
7
+ export type { Domain, CreateDomainInput, UpdateDomainInput, ListDomainsOptions, DomainStats, } from "./domain-records.js";
8
+ export { rowToDomain, createDomain, getDomain, listDomains, updateDomain, deleteDomain, countDomains, searchDomains, getByRegistrar, listExpiring, listSslExpiring, getDomainStats, getDomainByName, } from "./domain-records.js";
9
+ export type { DnsRecord, CreateDnsRecordInput, UpdateDnsRecordInput, } from "./dns-records.js";
10
+ export { rowToDnsRecord, createDnsRecord, getDnsRecord, listDnsRecords, updateDnsRecord, deleteDnsRecord, } from "./dns-records.js";
11
+ export type { Alert, CreateAlertInput, } from "./alerts.js";
12
+ export { createAlert, getAlert, listAlerts, deleteAlert, } from "./alerts.js";
13
+ export type { WhoisResult, DnsPropagationResult, SslCheckResult, ZoneImportResult, SubdomainResult, DnsValidationIssue, DnsValidationResult, } from "./dns-tools.js";
14
+ export { whoisLookup, checkDnsPropagation, checkSsl, exportZoneFile, importZoneFile, discoverSubdomains, validateDns, } from "./dns-tools.js";
15
+ export type { BulkCheckResult } from "./monitoring.js";
16
+ export { exportPortfolio, checkAllDomains } from "./monitoring.js";
17
+ //# sourceMappingURL=domains.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domains.d.ts","sourceRoot":"","sources":["../../src/db/domains.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,EACV,MAAM,EACN,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,WAAW,EACX,YAAY,EACZ,SAAS,EACT,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,cAAc,EACd,YAAY,EACZ,eAAe,EACf,cAAc,EACd,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACV,SAAS,EACT,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,cAAc,EACd,eAAe,EACf,YAAY,EACZ,cAAc,EACd,eAAe,EACf,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACV,KAAK,EACL,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,WAAW,EACX,QAAQ,EACR,UAAU,EACV,WAAW,GACZ,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,WAAW,EACX,oBAAoB,EACpB,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,QAAQ,EACR,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,WAAW,GACZ,MAAM,gBAAgB,CAAC;AAExB,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,7 @@
1
+ export interface MigrationEntry {
2
+ id: number;
3
+ name: string;
4
+ sql: string;
5
+ }
6
+ export declare const MIGRATIONS: MigrationEntry[];
7
+ //# sourceMappingURL=migrations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/db/migrations.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAM,UAAU,EAAE,cAAc,EAqDtC,CAAC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Portfolio export and bulk domain check operations
3
+ */
4
+ export declare function exportPortfolio(format?: "csv" | "json"): string;
5
+ export interface BulkCheckResult {
6
+ domain: string;
7
+ domain_id: string;
8
+ whois?: {
9
+ registrar: string | null;
10
+ expires_at: string | null;
11
+ error?: string;
12
+ };
13
+ ssl?: {
14
+ issuer: string | null;
15
+ expires_at: string | null;
16
+ error?: string;
17
+ };
18
+ dns_validation?: {
19
+ valid: boolean;
20
+ issue_count: number;
21
+ errors: string[];
22
+ };
23
+ }
24
+ export declare function checkAllDomains(): BulkCheckResult[];
25
+ //# sourceMappingURL=monitoring.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"monitoring.d.ts","sourceRoot":"","sources":["../../src/db/monitoring.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH,wBAAgB,eAAe,CAAC,MAAM,GAAE,KAAK,GAAG,MAAe,GAAG,MAAM,CAmDvE;AAaD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChF,GAAG,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3E,cAAc,CAAC,EAAE;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CAC5E;AAED,wBAAgB,eAAe,IAAI,eAAe,EAAE,CA+CnD"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * open-domains — Domain portfolio and DNS management for AI agents
3
+ */
4
+ export { createDomain, getDomain, listDomains, updateDomain, deleteDomain, countDomains, searchDomains, getByRegistrar, listExpiring, listSslExpiring, getDomainStats, getDomainByName, type Domain, type CreateDomainInput, type UpdateDomainInput, type ListDomainsOptions, type DomainStats, } from "./db/domains.js";
5
+ export { createDnsRecord, getDnsRecord, listDnsRecords, updateDnsRecord, deleteDnsRecord, type DnsRecord, type CreateDnsRecordInput, type UpdateDnsRecordInput, } from "./db/domains.js";
6
+ export { createAlert, getAlert, listAlerts, deleteAlert, type Alert, type CreateAlertInput, } from "./db/domains.js";
7
+ export { whoisLookup, checkDnsPropagation, checkSsl, exportZoneFile, importZoneFile, discoverSubdomains, validateDns, exportPortfolio, checkAllDomains, type WhoisResult, type DnsPropagationResult, type SslCheckResult, type ZoneImportResult, type SubdomainResult, type DnsValidationIssue, type DnsValidationResult, type BulkCheckResult, } from "./db/domains.js";
8
+ export { getDatabase, closeDatabase } from "./db/database.js";
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,YAAY,EACZ,SAAS,EACT,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,cAAc,EACd,YAAY,EACZ,eAAe,EACf,cAAc,EACd,eAAe,EACf,KAAK,MAAM,EACX,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,WAAW,GACjB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,eAAe,EACf,YAAY,EACZ,cAAc,EACd,eAAe,EACf,eAAe,EACf,KAAK,SAAS,EACd,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,GAC1B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,WAAW,EACX,QAAQ,EACR,UAAU,EACV,WAAW,EACX,KAAK,KAAK,EACV,KAAK,gBAAgB,GACtB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,QAAQ,EACR,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,eAAe,EACf,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,eAAe,GACrB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC"}