@uptime.link/interfaces 2.0.20 → 2.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.
Files changed (59) hide show
  1. package/dist_ts/00_commitinfo_data.d.ts +1 -1
  2. package/dist_ts/00_commitinfo_data.js +3 -3
  3. package/dist_ts/data/checkcollection.d.ts +15 -5
  4. package/dist_ts/data/checkcollection.js +2 -4
  5. package/dist_ts/data/checks/assumption.check.d.ts +7 -2
  6. package/dist_ts/data/checks/assumption.check.js +2 -3
  7. package/dist_ts/data/checks/function.check.d.ts +6 -1
  8. package/dist_ts/data/checks/function.check.js +2 -2
  9. package/dist_ts/data/checks/index.d.ts +72 -1
  10. package/dist_ts/data/checks/index.js +5 -1
  11. package/dist_ts/data/checks/pagerank.check.d.ts +7 -2
  12. package/dist_ts/data/checks/pagerank.check.js +2 -3
  13. package/dist_ts/data/checks/pwa.check.d.ts +5 -1
  14. package/dist_ts/data/checks/pwa.check.js +2 -2
  15. package/dist_ts/data/domainsnapshot.d.ts +3 -7
  16. package/dist_ts/data/domainsnapshot.js +2 -2
  17. package/dist_ts/data/incident.d.ts +39 -3
  18. package/dist_ts/data/incident.js +2 -2
  19. package/dist_ts/data/index.d.ts +5 -1
  20. package/dist_ts/data/index.js +16 -2
  21. package/dist_ts/data/linksnapshot.d.ts +18 -3
  22. package/dist_ts/data/linksnapshot.js +2 -2
  23. package/dist_ts/data/property.js +8 -2
  24. package/dist_ts/data/servicestatus.d.ts +39 -0
  25. package/dist_ts/data/servicestatus.js +2 -0
  26. package/dist_ts/data/status.js +2 -2
  27. package/dist_ts/data/statuspageconfig.d.ts +35 -0
  28. package/dist_ts/data/statuspageconfig.js +2 -0
  29. package/dist_ts/data/types.d.ts +31 -0
  30. package/dist_ts/data/types.js +5 -0
  31. package/dist_ts/requests/requests.checks.d.ts +1 -1
  32. package/dist_ts/requests/requests.checks.js +2 -3
  33. package/dist_ts/requests/requests.incidents.js +3 -3
  34. package/dist_ts/requests/requests.snapshot.d.ts +2 -2
  35. package/dist_ts/requests/requests.snapshot.js +2 -4
  36. package/dist_ts/requests/requests.status.d.ts +1 -1
  37. package/dist_ts/requests/requests.status.js +3 -4
  38. package/dist_ts/ul-interfaces.plugins.d.ts +1 -1
  39. package/dist_ts/ul-interfaces.plugins.js +2 -2
  40. package/npmextra.json +10 -4
  41. package/package.json +7 -8
  42. package/ts/00_commitinfo_data.ts +2 -2
  43. package/ts/data/checkcollection.ts +19 -8
  44. package/ts/data/checks/assumption.check.ts +7 -2
  45. package/ts/data/checks/function.check.ts +6 -1
  46. package/ts/data/checks/index.ts +105 -1
  47. package/ts/data/checks/pagerank.check.ts +7 -2
  48. package/ts/data/checks/pwa.check.ts +8 -2
  49. package/ts/data/domainsnapshot.ts +4 -8
  50. package/ts/data/incident.ts +65 -6
  51. package/ts/data/index.ts +23 -2
  52. package/ts/data/linksnapshot.ts +18 -3
  53. package/ts/data/servicestatus.ts +64 -0
  54. package/ts/data/statuspageconfig.ts +57 -0
  55. package/ts/data/types.ts +63 -0
  56. package/ts/requests/requests.checks.ts +1 -1
  57. package/ts/requests/requests.snapshot.ts +2 -2
  58. package/ts/requests/requests.status.ts +1 -1
  59. package/ts/ul-interfaces.plugins.ts +1 -1
package/npmextra.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "gitzone": {
2
+ "@git.zone/cli": {
3
3
  "projectType": "npm",
4
4
  "module": {
5
5
  "githost": "gitlab.com",
@@ -9,10 +9,16 @@
9
9
  "npmPackagename": "@uptime.link/interfaces",
10
10
  "license": "MIT",
11
11
  "projectDomain": "uptime.link"
12
+ },
13
+ "release": {
14
+ "registries": [
15
+ "https://verdaccio.lossless.digital",
16
+ "https://registry.npmjs.org"
17
+ ],
18
+ "accessLevel": "public"
12
19
  }
13
20
  },
14
- "npmci": {
15
- "npmGlobalTools": [],
16
- "npmAccessLevel": "public"
21
+ "@ship.zone/szci": {
22
+ "npmGlobalTools": []
17
23
  }
18
24
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uptime.link/interfaces",
3
- "version": "2.0.20",
3
+ "version": "2.1.0",
4
4
  "private": false,
5
5
  "description": "TypeScript interface for the uptime.link API and modules",
6
6
  "main": "dist_ts/index.js",
@@ -14,15 +14,14 @@
14
14
  "buildDocs": "tsdoc"
15
15
  },
16
16
  "devDependencies": {
17
- "@gitzone/tsbuild": "^2.1.65",
18
- "@gitzone/tsrun": "^1.2.39",
19
- "@gitzone/tstest": "^1.0.74",
20
- "@pushrocks/tapbundle": "^5.0.4",
21
- "@types/node": "^18.15.11"
17
+ "@git.zone/tsbuild": "^4.0.2",
18
+ "@git.zone/tsrun": "^2.0.1",
19
+ "@git.zone/tstest": "^3.1.3",
20
+ "@types/node": "^25.0.3"
22
21
  },
23
22
  "dependencies": {
24
- "@apiglobal/typedrequest-interfaces": "^2.0.1",
25
- "@tsclass/tsclass": "^4.0.34"
23
+ "@api.global/typedrequest-interfaces": "^3.0.19",
24
+ "@tsclass/tsclass": "^9.3.0"
26
25
  },
27
26
  "files": [
28
27
  "ts/**/*",
@@ -1,8 +1,8 @@
1
1
  /**
2
- * autocreated commitinfo by @pushrocks/commitinfo
2
+ * autocreated commitinfo by @push.rocks/commitinfo
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@uptime.link/interfaces',
6
- version: '2.0.20',
6
+ version: '2.1.0',
7
7
  description: 'TypeScript interface for the uptime.link API and modules'
8
8
  }
@@ -1,13 +1,24 @@
1
- import * as plugins from '../ul-interfaces.plugins.js';
2
- import * as search from './search.js';
3
-
4
- import * as checks from './checks/index.js';
1
+ import type * as checks from './checks/index.js';
5
2
 
3
+ /**
4
+ * A collection of checks to run against a property/service.
5
+ *
6
+ * Two storage modes supported:
7
+ * 1. Legacy: Separate arrays for each check type (assumptionChecks, functionChecks, etc.)
8
+ * 2. Modern: Single unified array using discriminated union (checks)
9
+ */
6
10
  export interface ICheckCollection {
7
11
  id: string;
12
+ name?: string;
13
+ description?: string;
8
14
  intervalMs: number;
9
- assumptionChecks?: Array<checks.IAssumptionCheck>;
10
- functionChecks: Array<checks.IFunctionCheck>;
11
- pwaChecks?: Array<checks.IPwaCheck>;
12
- pageRankChecks: Array<checks.IPageRankCheck>;
15
+
16
+ // Modern: Single array with discriminated union
17
+ checks?: checks.TCheckConfig[];
18
+
19
+ // Legacy: Separate arrays by type (for backward compatibility)
20
+ assumptionChecks?: checks.IAssumptionCheck[];
21
+ functionChecks?: checks.IFunctionCheck[];
22
+ pwaChecks?: checks.IPwaCheck[];
23
+ pageRankChecks?: checks.IPageRankCheck[];
13
24
  }
@@ -1,6 +1,11 @@
1
- import * as plugins from '../../ul-interfaces.plugins.js';
2
- import { TCheckResultStatus, TExecutionTiming } from './index.js';
1
+ import type * as plugins from '../../ul-interfaces.plugins.js';
2
+ import type { TCheckResultStatus } from '../types.js';
3
+ import type { TExecutionTiming } from './index.js';
3
4
 
5
+ /**
6
+ * Assumption check execution data.
7
+ * Used by check runners to store input and results.
8
+ */
4
9
  export interface IAssumptionCheck {
5
10
  inputData: {
6
11
  domain: string;
@@ -1,5 +1,10 @@
1
- import { TCheckResultStatus, TExecutionTiming } from './index.js';
1
+ import type { TCheckResultStatus } from '../types.js';
2
+ import type { TExecutionTiming } from './index.js';
2
3
 
4
+ /**
5
+ * Function check execution data.
6
+ * Used by check runners to store input and results.
7
+ */
3
8
  export interface IFunctionCheck {
4
9
  checkId: string;
5
10
  inputData: {
@@ -1,4 +1,8 @@
1
- export type TCheckResultStatus = 'ok' | 'not ok' | 'timed out';
1
+ import type { TStatusType, TCheckResultStatus, TCheckLastResult } from '../types.js';
2
+
3
+ // ============================================
4
+ // Execution Timing (used by check runners)
5
+ // ============================================
2
6
 
3
7
  export interface TExecutionTiming {
4
8
  plannedTime: number;
@@ -7,6 +11,106 @@ export interface TExecutionTiming {
7
11
  duration: number;
8
12
  }
9
13
 
14
+ // Re-export for backward compatibility
15
+ export type { TCheckResultStatus };
16
+
17
+ // ============================================
18
+ // Check Configuration Base Interface
19
+ // ============================================
20
+
21
+ /**
22
+ * Base interface for all check configurations.
23
+ * Extended by discriminated variants.
24
+ */
25
+ export interface ICheckBase {
26
+ id: string;
27
+ name: string;
28
+ description?: string;
29
+ enabled: boolean;
30
+ intervalMs?: number;
31
+ lastRun?: number;
32
+ lastResult?: TCheckLastResult;
33
+ }
34
+
35
+ // ============================================
36
+ // Discriminated Check Variants (Configuration)
37
+ // ============================================
38
+
39
+ /**
40
+ * Assumption check - assumes a status without active verification
41
+ */
42
+ export interface IAssumptionCheckConfig extends ICheckBase {
43
+ checkType: 'assumption';
44
+ assumedStatus: TStatusType;
45
+ domain?: string;
46
+ title?: string;
47
+ statusCode?: string;
48
+ }
49
+
50
+ /**
51
+ * Function check - calls a URL and validates response
52
+ */
53
+ export interface IFunctionCheckConfig extends ICheckBase {
54
+ checkType: 'function';
55
+ functionUrl: string;
56
+ domain?: string;
57
+ expectedStatusCode?: number;
58
+ timeoutMs?: number;
59
+ headers?: Record<string, string>;
60
+ }
61
+
62
+ /**
63
+ * PWA check - validates Progressive Web App criteria
64
+ */
65
+ export interface IPwaCheckConfig extends ICheckBase {
66
+ checkType: 'pwa';
67
+ targetUrl: string;
68
+ domain?: string;
69
+ lighthouseThreshold?: number;
70
+ categories?: ('performance' | 'accessibility' | 'best-practices' | 'seo')[];
71
+ }
72
+
73
+ /**
74
+ * PageRank check - validates search engine ranking
75
+ */
76
+ export interface IPageRankCheckConfig extends ICheckBase {
77
+ checkType: 'pagerank';
78
+ targetUrl: string;
79
+ domain?: string;
80
+ searchTerm: string;
81
+ minimumRank?: number;
82
+ checkGoogle?: boolean;
83
+ checkBing?: boolean;
84
+ googleMinRank?: number;
85
+ bingMinRank?: number;
86
+ }
87
+
88
+ // ============================================
89
+ // Union Type (for UI and generic handling)
90
+ // ============================================
91
+
92
+ /**
93
+ * Union of all check configuration types.
94
+ * Use `checkType` discriminant for type narrowing.
95
+ *
96
+ * @example
97
+ * function handleCheck(check: TCheckConfig) {
98
+ * if (check.checkType === 'function') {
99
+ * console.log(check.functionUrl); // TypeScript knows this exists
100
+ * }
101
+ * }
102
+ */
103
+ export type TCheckConfig =
104
+ | IAssumptionCheckConfig
105
+ | IFunctionCheckConfig
106
+ | IPwaCheckConfig
107
+ | IPageRankCheckConfig;
108
+
109
+ // ============================================
110
+ // Execution Interfaces (Runtime Data)
111
+ // ============================================
112
+
113
+ // Keep existing execution interfaces for backward compatibility
10
114
  export * from './assumption.check.js';
11
115
  export * from './function.check.js';
12
116
  export * from './pagerank.check.js';
@@ -1,6 +1,11 @@
1
- import * as search from '../search.js';
2
- import { TCheckResultStatus, TExecutionTiming } from './index.js';
1
+ import type * as search from '../search.js';
2
+ import type { TCheckResultStatus } from '../types.js';
3
+ import type { TExecutionTiming } from './index.js';
3
4
 
5
+ /**
6
+ * PageRank check execution data.
7
+ * Used by check runners to store input and results.
8
+ */
4
9
  export interface IPageRankCheck {
5
10
  inputData: {
6
11
  subId: string;
@@ -1,7 +1,13 @@
1
- import { TCheckResultStatus } from './index.js';
1
+ import type { TCheckResultStatus } from '../types.js';
2
2
 
3
+ /**
4
+ * PWA check execution data.
5
+ * Used by check runners to store input and results.
6
+ */
3
7
  export interface IPwaCheck {
4
- inputData: { domain: string };
8
+ inputData: {
9
+ domain: string;
10
+ };
5
11
  executionResults: Array<{
6
12
  subId: string;
7
13
  timeStarted: number;
@@ -1,4 +1,5 @@
1
1
  import * as plugins from '../ul-interfaces.plugins.js';
2
+ import type { ILinkSnapshot } from './linksnapshot.js';
2
3
 
3
4
  export interface IDomainSnapshot {
4
5
  registration: {
@@ -7,13 +8,7 @@ export interface IDomainSnapshot {
7
8
  createdDate: number;
8
9
  expiryDate: number;
9
10
  };
10
- delegation: {
11
- domainWithoutSuffix: string;
12
- publicSuffix: string;
13
- subdomain: string;
14
- isIcann: boolean;
15
- dnsSecEnabled: boolean;
16
- };
11
+ delegation: plugins.tsclass.network.IDomainDelegation;
17
12
  phishingFlags: {
18
13
  listName: string;
19
14
  }[];
@@ -27,7 +22,8 @@ export interface IDomainSnapshot {
27
22
  specialRecords: {
28
23
  dmarc: plugins.tsclass.network.IDnsRecord[];
29
24
  }
30
- }[]
25
+ }[];
26
+ linkSnapshots: ILinkSnapshot[];
31
27
  whoisServers: {
32
28
  serverUrl: string;
33
29
  content: string;
@@ -1,21 +1,80 @@
1
- import * as plugins from '../ul-interfaces.plugins.js';
1
+ import type { TIncidentSeverity, TIncidentStatus } from './types.js';
2
2
 
3
+ // ============================================
4
+ // Incident Update
5
+ // ============================================
6
+
7
+ /**
8
+ * A single update within an incident timeline.
9
+ */
10
+ export interface IIncidentUpdate {
11
+ id: string;
12
+ incidentId: string;
13
+ status: TIncidentStatus;
14
+ message: string;
15
+ createdAt: number;
16
+ createdBy?: string;
17
+ type?: 'comment' | 'status_change' | 'automatic';
18
+ }
19
+
20
+ // ============================================
21
+ // Incident
22
+ // ============================================
23
+
24
+ /**
25
+ * Represents an incident affecting one or more services.
26
+ */
3
27
  export interface IIncident {
28
+ id: string;
29
+ title: string;
30
+ description: string;
31
+ severity: TIncidentSeverity;
32
+ status: TIncidentStatus;
33
+
34
+ // Affected services
35
+ affectedServiceIds: string[];
36
+
37
+ // Timeline
38
+ createdAt: number;
39
+ updatedAt: number;
40
+ resolvedAt?: number;
41
+ firstResponseAt?: number;
42
+
43
+ // Updates history
44
+ updates: IIncidentUpdate[];
45
+
46
+ // Metadata
47
+ createdBy?: string;
48
+ assignedUserId?: string;
49
+ creationMode?: 'monitor' | 'manual';
50
+
51
+ // Scheduled maintenance
52
+ isScheduled?: boolean;
53
+ scheduledStartTime?: number;
54
+ scheduledEndTime?: number;
55
+
56
+ // Post-incident
57
+ postMortemLink?: string;
58
+ }
59
+
60
+ // ============================================
61
+ // Legacy Interface (for backward compatibility)
62
+ // ============================================
63
+
64
+ /**
65
+ * @deprecated Use IIncident instead
66
+ */
67
+ export interface IIncidentLegacy {
4
68
  timestamp: number;
5
69
  firstResponseTimestamp?: number;
6
- /**
7
- * indicates
8
- */
9
70
  status: 'discovered' | 'investigating' | 'fixing' | 'fixImplemented' | 'watching' | 'resolved';
10
71
  creationMode: 'monitor' | 'manual';
11
72
  assignedUserId?: string;
12
73
  postMortemLink?: string;
13
-
14
74
  updates: {
15
75
  markdownText: string;
16
76
  type: 'comment' | 'manualUpdate' | 'automaticUpdate';
17
77
  }[];
18
-
19
78
  justForLooks: {
20
79
  isoTimestamp: string;
21
80
  };
package/ts/data/index.ts CHANGED
@@ -1,11 +1,32 @@
1
+ // Core types
2
+ export * from './types.js';
3
+
4
+ // Check interfaces (configuration + execution)
5
+ export * from './checks/index.js';
6
+
7
+ // Collections
1
8
  export * from './checkcollection.js';
2
- export * from './domainsnapshot.js';
9
+
10
+ // Incidents
3
11
  export * from './incident.js';
12
+
13
+ // Service status
14
+ export * from './servicestatus.js';
15
+
16
+ // Status page configuration
17
+ export * from './statuspageconfig.js';
18
+
19
+ // Domain and link snapshots
20
+ export * from './domainsnapshot.js';
4
21
  export * from './linksnapshot.js';
22
+
23
+ // Property and search
5
24
  export * from './property.js';
6
25
  export * from './search.js';
26
+
27
+ // Status (90-day history)
7
28
  export * from './status.js';
8
29
 
30
+ // Re-export checks namespace for convenience
9
31
  import * as checks from './checks/index.js';
10
-
11
32
  export { checks };
@@ -1,14 +1,29 @@
1
1
  import * as plugins from '../ul-interfaces.plugins.js';
2
2
 
3
3
  export interface ILinkSnapshot {
4
+ /**
5
+ * the link base on which the snapshot was taken
6
+ */
7
+ linkBaseUrl: string;
4
8
  httpsSupport: boolean;
5
9
  httpHttpsParity: boolean;
6
10
  httpToHttpsRedirect: boolean;
7
- wwwToRootRedirect: boolean;
8
- rootToWwwRedirect: boolean;
11
+ fromWwwRedirect: boolean;
12
+ toWwwRedirect: boolean;
9
13
  statusCode: number;
10
14
  fullPageLoadSize: number;
11
15
  fullPageLoadTimeMs: number;
12
16
  cookies: any[];
13
- gdprCompliance: boolean;
17
+ httpRequest: {
18
+ statusCode: number;
19
+ headers: {
20
+ [key: string]: string;
21
+ }
22
+ };
23
+ httpsRequest: {
24
+ statusCode: number;
25
+ headers: {
26
+ [key: string]: string;
27
+ }
28
+ };
14
29
  }
@@ -0,0 +1,64 @@
1
+ import type { TStatusType, TStatusMode, TCheckType } from './types.js';
2
+
3
+ // ============================================
4
+ // Service Status
5
+ // ============================================
6
+
7
+ /**
8
+ * Represents the status of a monitored service.
9
+ */
10
+ export interface IServiceStatus {
11
+ id: string;
12
+ name: string;
13
+ displayName: string;
14
+ description?: string;
15
+
16
+ // Current state
17
+ currentStatus: TStatusType;
18
+ lastChecked: number;
19
+ responseTime: number;
20
+
21
+ // Uptime metrics
22
+ uptime30d: number;
23
+ uptime90d: number;
24
+
25
+ // Organization
26
+ category?: string;
27
+ dependencies?: string[];
28
+
29
+ // Status management
30
+ statusMode: TStatusMode;
31
+ manualStatus?: TStatusType;
32
+ paused: boolean;
33
+
34
+ // Check configuration
35
+ checkType?: TCheckType;
36
+ checkCollectionId?: string;
37
+ intervalMs?: number;
38
+ }
39
+
40
+ // ============================================
41
+ // Status History
42
+ // ============================================
43
+
44
+ /**
45
+ * A point in the status history timeline.
46
+ */
47
+ export interface IStatusHistoryPoint {
48
+ timestamp: number;
49
+ status: TStatusType;
50
+ responseTime?: number;
51
+ }
52
+
53
+ // ============================================
54
+ // Overall Status
55
+ // ============================================
56
+
57
+ /**
58
+ * Aggregate status for a group of services or entire status page.
59
+ */
60
+ export interface IOverallStatus {
61
+ status: TStatusType;
62
+ message?: string;
63
+ lastUpdated: number;
64
+ }
@@ -0,0 +1,57 @@
1
+ import type { IOverallStatus } from './servicestatus.js';
2
+
3
+ // ============================================
4
+ // Service Group
5
+ // ============================================
6
+
7
+ /**
8
+ * A group of related services displayed together.
9
+ */
10
+ export interface IServiceGroup {
11
+ id: string;
12
+ name: string;
13
+ description?: string;
14
+ serviceIds: string[];
15
+ expanded: boolean;
16
+ order?: number;
17
+ }
18
+
19
+ // ============================================
20
+ // Status Page Configuration
21
+ // ============================================
22
+
23
+ /**
24
+ * Configuration for a public status page.
25
+ */
26
+ export interface IStatusPageConfig {
27
+ id: string;
28
+ name: string;
29
+ slug: string;
30
+
31
+ // Branding
32
+ logoUrl?: string;
33
+ faviconUrl?: string;
34
+ primaryColor?: string;
35
+ customCss?: string;
36
+
37
+ // Content
38
+ headerTitle: string;
39
+ headerDescription?: string;
40
+ footerText?: string;
41
+
42
+ // Features
43
+ showHistoricalUptime: boolean;
44
+ showResponseTime: boolean;
45
+ showSubscribeButton: boolean;
46
+ showIncidentHistory: boolean;
47
+
48
+ // Service grouping
49
+ serviceGroups: IServiceGroup[];
50
+
51
+ // Overall status override
52
+ overallStatus?: IOverallStatus;
53
+
54
+ // Custom domain
55
+ customDomain?: string;
56
+ sslEnabled?: boolean;
57
+ }
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Shared type definitions for uptime.link
3
+ */
4
+
5
+ // ============================================
6
+ // Status Types
7
+ // ============================================
8
+
9
+ /**
10
+ * Status types for monitors/services
11
+ */
12
+ export type TStatusType =
13
+ | 'operational'
14
+ | 'degraded'
15
+ | 'partial_outage'
16
+ | 'major_outage'
17
+ | 'maintenance'
18
+ | 'initializing'
19
+ | 'error'
20
+ | 'paused';
21
+
22
+ /**
23
+ * Check types (discriminant values for TCheck union)
24
+ */
25
+ export type TCheckType = 'assumption' | 'function' | 'pwa' | 'pagerank';
26
+
27
+ /**
28
+ * Status mode for monitors - auto follows checks, manual is user-set
29
+ */
30
+ export type TStatusMode = 'auto' | 'manual';
31
+
32
+ // ============================================
33
+ // Incident Types
34
+ // ============================================
35
+
36
+ /**
37
+ * Incident severity levels
38
+ */
39
+ export type TIncidentSeverity = 'critical' | 'major' | 'minor' | 'maintenance';
40
+
41
+ /**
42
+ * Incident status workflow
43
+ */
44
+ export type TIncidentStatus =
45
+ | 'investigating'
46
+ | 'identified'
47
+ | 'monitoring'
48
+ | 'resolved'
49
+ | 'postmortem';
50
+
51
+ // ============================================
52
+ // Check Result Types (used by execution)
53
+ // ============================================
54
+
55
+ /**
56
+ * Result status for check execution
57
+ */
58
+ export type TCheckResultStatus = 'ok' | 'not ok' | 'timed out';
59
+
60
+ /**
61
+ * Last result state for a check
62
+ */
63
+ export type TCheckLastResult = 'success' | 'failure' | 'pending';
@@ -1,4 +1,4 @@
1
- import { ICheckCollection } from '../data/checkcollection.js';
1
+ import type { ICheckCollection } from '../data/checkcollection.js';
2
2
  import * as plugins from '../ul-interfaces.plugins.js';
3
3
 
4
4
  export interface IRequest_CheckExchange
@@ -1,5 +1,5 @@
1
- import { IDomainSnapshot } from '../data/domainsnapshot.js';
2
- import { ILinkSnapshot } from '../data/linksnapshot.js';
1
+ import type { IDomainSnapshot } from '../data/domainsnapshot.js';
2
+ import type { ILinkSnapshot } from '../data/linksnapshot.js';
3
3
  import * as plugins from '../ul-interfaces.plugins.js';
4
4
 
5
5
  export interface IReq_PerformDomainSnapshot
@@ -1,6 +1,6 @@
1
1
  import * as plugins from '../ul-interfaces.plugins.js';
2
2
  import * as data from '../data/index.js';
3
- import { IStatus } from '../data/status.js';
3
+ import type { IStatus } from '../data/status.js';
4
4
 
5
5
  export interface IRequest_Status_Get
6
6
  extends plugins.typedRequestInterfaces.implementsTR<
@@ -1,4 +1,4 @@
1
- import * as typedRequestInterfaces from '@apiglobal/typedrequest-interfaces';
1
+ import * as typedRequestInterfaces from '@api.global/typedrequest-interfaces';
2
2
 
3
3
  export { typedRequestInterfaces };
4
4