@comms-id/asx 0.4.0 → 0.4.2
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 +1 -1
- package/dist/browser-profile.d.ts +21 -0
- package/dist/browser-profile.js +115 -0
- package/dist/client-replies.d.ts +178 -0
- package/dist/client-replies.js +57 -0
- package/dist/client.d.ts +25 -0
- package/dist/client.js +179 -0
- package/dist/collection.d.ts +555 -0
- package/dist/collection.js +194 -0
- package/dist/company-events.d.ts +2 -0
- package/dist/company-events.js +48 -0
- package/dist/company-record.d.ts +4 -0
- package/dist/company-record.js +60 -0
- package/dist/company-stream-client.d.ts +4 -0
- package/dist/company-stream-client.js +139 -0
- package/dist/company-stream.d.ts +46 -0
- package/dist/company-stream.js +117 -0
- package/dist/contract/http-api.d.ts +139 -0
- package/dist/contract/http-api.js +100 -0
- package/dist/directory-search.d.ts +2 -0
- package/dist/directory-search.js +33 -0
- package/dist/enrichment.d.ts +75 -0
- package/dist/enrichment.js +114 -0
- package/dist/http.d.ts +1 -0
- package/dist/http.js +49 -0
- package/dist/live.d.ts +56 -0
- package/dist/live.js +129 -0
- package/dist/model.d.ts +112 -0
- package/dist/model.js +86 -0
- package/dist/parse.d.ts +4 -0
- package/dist/parse.js +130 -0
- package/dist/profile-contact.d.ts +13 -0
- package/dist/profile-contact.js +66 -0
- package/dist/publication.d.ts +25 -0
- package/dist/publication.js +89 -0
- package/dist/refresh-coordinator.d.ts +96 -0
- package/dist/refresh-coordinator.js +194 -0
- package/dist/refresh.d.ts +126 -0
- package/dist/refresh.js +157 -0
- package/dist/requests.d.ts +10 -0
- package/dist/requests.js +21 -0
- package/dist/runtime/http.js +8 -1
- package/dist/search-service.d.ts +16 -0
- package/dist/search-service.js +64 -0
- package/dist/service.d.ts +35 -0
- package/dist/service.js +99 -0
- package/dist/snapshot.d.ts +328 -0
- package/dist/snapshot.js +151 -0
- package/dist/source-record.d.ts +63 -0
- package/dist/source-record.js +91 -0
- package/package.json +3 -3
|
@@ -0,0 +1,555 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
import { type Company, DirectoryEntry } from "./model.js";
|
|
3
|
+
import { type CompanySources } from "./source-record.js";
|
|
4
|
+
declare const Checkpoint: Schema.Struct<{
|
|
5
|
+
readonly formatVersion: Schema.Literal<1>;
|
|
6
|
+
readonly runId: Schema.String;
|
|
7
|
+
readonly baseGeneration: Schema.NullOr<Schema.String>;
|
|
8
|
+
readonly directory: Schema.Struct<{
|
|
9
|
+
readonly entries: Schema.$Array<Schema.Struct<{
|
|
10
|
+
readonly ticker: Schema.String;
|
|
11
|
+
readonly companyName: Schema.String;
|
|
12
|
+
readonly industryGroup: Schema.NullOr<Schema.String>;
|
|
13
|
+
readonly listingDate: Schema.NullOr<Schema.String>;
|
|
14
|
+
readonly marketCapitalisation: Schema.NullOr<Schema.Number>;
|
|
15
|
+
}>>;
|
|
16
|
+
readonly observedAt: Schema.String;
|
|
17
|
+
}>;
|
|
18
|
+
readonly attempts: Schema.$Array<Schema.Struct<{
|
|
19
|
+
readonly ticker: Schema.String;
|
|
20
|
+
readonly outcome: Schema.Union<readonly [Schema.Union<readonly [Schema.Struct<{
|
|
21
|
+
readonly status: Schema.Literal<"found">;
|
|
22
|
+
readonly observation: Schema.Struct<{
|
|
23
|
+
readonly company: Schema.Struct<{
|
|
24
|
+
readonly raw: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
|
|
25
|
+
readonly ticker: Schema.String;
|
|
26
|
+
readonly sourceId: Schema.String;
|
|
27
|
+
readonly companyName: Schema.String;
|
|
28
|
+
readonly address: Schema.NullOr<Schema.String>;
|
|
29
|
+
readonly tel: Schema.NullOr<Schema.String>;
|
|
30
|
+
readonly fax: Schema.NullOr<Schema.String>;
|
|
31
|
+
readonly website: Schema.NullOr<Schema.String>;
|
|
32
|
+
readonly description: Schema.NullOr<Schema.String>;
|
|
33
|
+
readonly issueType: Schema.NullOr<Schema.String>;
|
|
34
|
+
readonly foreignExempt: Schema.NullOr<Schema.Boolean>;
|
|
35
|
+
readonly people: Schema.$Array<Schema.Struct<{
|
|
36
|
+
readonly sourceName: Schema.String;
|
|
37
|
+
readonly displayName: Schema.String;
|
|
38
|
+
readonly title: Schema.String;
|
|
39
|
+
readonly sourceCategory: Schema.Literals<readonly ["directors", "secretaries"]>;
|
|
40
|
+
}>>;
|
|
41
|
+
}>;
|
|
42
|
+
readonly startedAt: Schema.String;
|
|
43
|
+
readonly observedAt: Schema.String;
|
|
44
|
+
readonly lastChangedAt: Schema.String;
|
|
45
|
+
}>;
|
|
46
|
+
}>, Schema.Struct<{
|
|
47
|
+
readonly status: Schema.Literal<"missing">;
|
|
48
|
+
readonly startedAt: Schema.String;
|
|
49
|
+
readonly observedAt: Schema.String;
|
|
50
|
+
readonly raw: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
|
|
51
|
+
}>]>, Schema.Struct<{
|
|
52
|
+
readonly _tag: Schema.Literal<"AsxError">;
|
|
53
|
+
readonly code: Schema.Literals<readonly ["INVALID_INPUT", "PARSE_FAILED", "SOURCE_MISMATCH", "TRANSPORT_FAILED", "TIMEOUT", "RATE_LIMITED", "UPSTREAM_UNAVAILABLE", "CONFIGURATION_ERROR", "SNAPSHOT_UNAVAILABLE", "CANCELLED", "INTERNAL_ERROR", "ACCESS_DENIED", "UPSTREAM_REJECTED", "PERSISTENCE_FAILED", "PUBLICATION_CONFLICT", "COVERAGE_REJECTED"]>;
|
|
54
|
+
}>]>;
|
|
55
|
+
readonly enrichment: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Struct<{
|
|
56
|
+
readonly status: Schema.Literal<"confirmed">;
|
|
57
|
+
readonly enrichment: Schema.Struct<{
|
|
58
|
+
readonly ticker: Schema.String;
|
|
59
|
+
readonly sourceId: Schema.NonEmptyString;
|
|
60
|
+
readonly abn: Schema.String;
|
|
61
|
+
readonly acn: Schema.NullOr<Schema.String>;
|
|
62
|
+
readonly legalName: Schema.NonEmptyString;
|
|
63
|
+
readonly identityEvidence: Schema.Struct<{
|
|
64
|
+
readonly url: Schema.String;
|
|
65
|
+
readonly sha256: Schema.String;
|
|
66
|
+
readonly observedAt: Schema.String;
|
|
67
|
+
readonly kind: Schema.Literals<readonly ["issuer-filing", "issuer-website"]>;
|
|
68
|
+
}>;
|
|
69
|
+
readonly abrEvidence: Schema.Struct<{
|
|
70
|
+
readonly source: Schema.Literals<readonly ["abr-live", "abr-snapshot"]>;
|
|
71
|
+
readonly observedAt: Schema.String;
|
|
72
|
+
}>;
|
|
73
|
+
readonly website: Schema.NullOr<Schema.Struct<{
|
|
74
|
+
readonly url: Schema.String;
|
|
75
|
+
readonly evidence: Schema.Struct<{
|
|
76
|
+
readonly url: Schema.String;
|
|
77
|
+
readonly sha256: Schema.String;
|
|
78
|
+
readonly observedAt: Schema.String;
|
|
79
|
+
readonly kind: Schema.Literals<readonly ["issuer-filing", "issuer-website"]>;
|
|
80
|
+
}>;
|
|
81
|
+
}>>;
|
|
82
|
+
}>;
|
|
83
|
+
}>, Schema.Struct<{
|
|
84
|
+
readonly status: Schema.Literal<"unresolved">;
|
|
85
|
+
readonly reason: Schema.Literals<readonly ["NO_EVIDENCE", "AMBIGUOUS", "INVALID_EVIDENCE", "IDENTITY_MISMATCH"]>;
|
|
86
|
+
}>]>, Schema.Struct<{
|
|
87
|
+
readonly _tag: Schema.Literal<"AsxError">;
|
|
88
|
+
readonly code: Schema.Literals<readonly ["INVALID_INPUT", "PARSE_FAILED", "SOURCE_MISMATCH", "TRANSPORT_FAILED", "TIMEOUT", "RATE_LIMITED", "UPSTREAM_UNAVAILABLE", "CONFIGURATION_ERROR", "SNAPSHOT_UNAVAILABLE", "CANCELLED", "INTERNAL_ERROR", "ACCESS_DENIED", "UPSTREAM_REJECTED", "PERSISTENCE_FAILED", "PUBLICATION_CONFLICT", "COVERAGE_REJECTED"]>;
|
|
89
|
+
}>]>>;
|
|
90
|
+
readonly sources: Schema.optionalKey<Schema.Struct<{
|
|
91
|
+
readonly asx: Schema.optionalKey<Schema.Struct<{
|
|
92
|
+
readonly source: Schema.Literals<readonly ["asx", "morningstar", "google-finance"]>;
|
|
93
|
+
readonly ticker: Schema.String;
|
|
94
|
+
readonly sourceUrl: Schema.String;
|
|
95
|
+
readonly sourceId: Schema.NonEmptyString;
|
|
96
|
+
readonly status: Schema.Literals<readonly ["found", "missing"]>;
|
|
97
|
+
readonly startedAt: Schema.String;
|
|
98
|
+
readonly observedAt: Schema.String;
|
|
99
|
+
readonly payload: Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>;
|
|
100
|
+
readonly websites: Schema.$Array<Schema.String>;
|
|
101
|
+
}>>;
|
|
102
|
+
readonly morningstar: Schema.optionalKey<Schema.Struct<{
|
|
103
|
+
readonly source: Schema.Literals<readonly ["asx", "morningstar", "google-finance"]>;
|
|
104
|
+
readonly ticker: Schema.String;
|
|
105
|
+
readonly sourceUrl: Schema.String;
|
|
106
|
+
readonly sourceId: Schema.NonEmptyString;
|
|
107
|
+
readonly status: Schema.Literals<readonly ["found", "missing"]>;
|
|
108
|
+
readonly startedAt: Schema.String;
|
|
109
|
+
readonly observedAt: Schema.String;
|
|
110
|
+
readonly payload: Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>;
|
|
111
|
+
readonly websites: Schema.$Array<Schema.String>;
|
|
112
|
+
}>>;
|
|
113
|
+
readonly "google-finance": Schema.optionalKey<Schema.Struct<{
|
|
114
|
+
readonly source: Schema.Literals<readonly ["asx", "morningstar", "google-finance"]>;
|
|
115
|
+
readonly ticker: Schema.String;
|
|
116
|
+
readonly sourceUrl: Schema.String;
|
|
117
|
+
readonly sourceId: Schema.NonEmptyString;
|
|
118
|
+
readonly status: Schema.Literals<readonly ["found", "missing"]>;
|
|
119
|
+
readonly startedAt: Schema.String;
|
|
120
|
+
readonly observedAt: Schema.String;
|
|
121
|
+
readonly payload: Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>;
|
|
122
|
+
readonly websites: Schema.$Array<Schema.String>;
|
|
123
|
+
}>>;
|
|
124
|
+
}>>;
|
|
125
|
+
}>>;
|
|
126
|
+
}>;
|
|
127
|
+
export type RefreshCheckpoint = typeof Checkpoint.Type;
|
|
128
|
+
export interface CollectionSource {
|
|
129
|
+
readonly directory: (signal: AbortSignal) => Promise<unknown>;
|
|
130
|
+
readonly lookup: (ticker: string, signal: AbortSignal) => Promise<unknown>;
|
|
131
|
+
readonly enrich?: (company: Company, signal: AbortSignal, sources?: CompanySources) => Promise<unknown>;
|
|
132
|
+
/** Independent public-profile collectors; successful observations may be persisted by the host immediately. */
|
|
133
|
+
readonly collectSources?: (entry: typeof DirectoryEntry.Type, signal: AbortSignal) => Promise<CompanySources>;
|
|
134
|
+
/** When supplied, full provider payloads are durably stored here instead of duplicated in the checkpoint/generation. */
|
|
135
|
+
readonly storeSources?: (entry: typeof DirectoryEntry.Type, sources: CompanySources, signal: AbortSignal) => Promise<void>;
|
|
136
|
+
}
|
|
137
|
+
/** Validate persisted progress before resuming; the directory and completed prefix cannot diverge. */
|
|
138
|
+
export declare function decodeRefreshCheckpoint(input: unknown): RefreshCheckpoint;
|
|
139
|
+
/** The host owns source permission, durable checkpoints, scheduling and publication after completion. */
|
|
140
|
+
export declare function createRefreshCollector(source: CollectionSource): {
|
|
141
|
+
begin: (baseGeneration: string | null, signal?: AbortSignal) => Promise<{
|
|
142
|
+
readonly formatVersion: 1;
|
|
143
|
+
readonly runId: string;
|
|
144
|
+
readonly baseGeneration: string | null;
|
|
145
|
+
readonly directory: {
|
|
146
|
+
readonly entries: readonly {
|
|
147
|
+
readonly ticker: string;
|
|
148
|
+
readonly companyName: string;
|
|
149
|
+
readonly industryGroup: string | null;
|
|
150
|
+
readonly listingDate: string | null;
|
|
151
|
+
readonly marketCapitalisation: number | null;
|
|
152
|
+
}[];
|
|
153
|
+
readonly observedAt: string;
|
|
154
|
+
};
|
|
155
|
+
readonly attempts: readonly {
|
|
156
|
+
readonly ticker: string;
|
|
157
|
+
readonly outcome: {
|
|
158
|
+
readonly _tag: "AsxError";
|
|
159
|
+
readonly code: "ACCESS_DENIED" | "CANCELLED" | "CONFIGURATION_ERROR" | "COVERAGE_REJECTED" | "INTERNAL_ERROR" | "INVALID_INPUT" | "PARSE_FAILED" | "PERSISTENCE_FAILED" | "PUBLICATION_CONFLICT" | "RATE_LIMITED" | "SNAPSHOT_UNAVAILABLE" | "SOURCE_MISMATCH" | "TIMEOUT" | "TRANSPORT_FAILED" | "UPSTREAM_REJECTED" | "UPSTREAM_UNAVAILABLE";
|
|
160
|
+
} | {
|
|
161
|
+
readonly status: "found";
|
|
162
|
+
readonly observation: {
|
|
163
|
+
readonly company: {
|
|
164
|
+
readonly raw?: {
|
|
165
|
+
readonly [x: string]: Schema.Json;
|
|
166
|
+
} | undefined;
|
|
167
|
+
readonly ticker: string;
|
|
168
|
+
readonly sourceId: string;
|
|
169
|
+
readonly companyName: string;
|
|
170
|
+
readonly address: string | null;
|
|
171
|
+
readonly tel: string | null;
|
|
172
|
+
readonly fax: string | null;
|
|
173
|
+
readonly website: string | null;
|
|
174
|
+
readonly description: string | null;
|
|
175
|
+
readonly issueType: string | null;
|
|
176
|
+
readonly foreignExempt: boolean | null;
|
|
177
|
+
readonly people: readonly {
|
|
178
|
+
readonly sourceName: string;
|
|
179
|
+
readonly displayName: string;
|
|
180
|
+
readonly title: string;
|
|
181
|
+
readonly sourceCategory: "directors" | "secretaries";
|
|
182
|
+
}[];
|
|
183
|
+
};
|
|
184
|
+
readonly startedAt: string;
|
|
185
|
+
readonly observedAt: string;
|
|
186
|
+
readonly lastChangedAt: string;
|
|
187
|
+
};
|
|
188
|
+
} | {
|
|
189
|
+
readonly status: "missing";
|
|
190
|
+
readonly startedAt: string;
|
|
191
|
+
readonly observedAt: string;
|
|
192
|
+
readonly raw?: {
|
|
193
|
+
readonly [x: string]: Schema.Json;
|
|
194
|
+
} | undefined;
|
|
195
|
+
};
|
|
196
|
+
readonly enrichment?: {
|
|
197
|
+
readonly _tag: "AsxError";
|
|
198
|
+
readonly code: "ACCESS_DENIED" | "CANCELLED" | "CONFIGURATION_ERROR" | "COVERAGE_REJECTED" | "INTERNAL_ERROR" | "INVALID_INPUT" | "PARSE_FAILED" | "PERSISTENCE_FAILED" | "PUBLICATION_CONFLICT" | "RATE_LIMITED" | "SNAPSHOT_UNAVAILABLE" | "SOURCE_MISMATCH" | "TIMEOUT" | "TRANSPORT_FAILED" | "UPSTREAM_REJECTED" | "UPSTREAM_UNAVAILABLE";
|
|
199
|
+
} | {
|
|
200
|
+
readonly status: "confirmed";
|
|
201
|
+
readonly enrichment: {
|
|
202
|
+
readonly ticker: string;
|
|
203
|
+
readonly sourceId: string;
|
|
204
|
+
readonly abn: string;
|
|
205
|
+
readonly acn: string | null;
|
|
206
|
+
readonly legalName: string;
|
|
207
|
+
readonly identityEvidence: {
|
|
208
|
+
readonly url: string;
|
|
209
|
+
readonly sha256: string;
|
|
210
|
+
readonly observedAt: string;
|
|
211
|
+
readonly kind: "issuer-filing" | "issuer-website";
|
|
212
|
+
};
|
|
213
|
+
readonly abrEvidence: {
|
|
214
|
+
readonly source: "abr-live" | "abr-snapshot";
|
|
215
|
+
readonly observedAt: string;
|
|
216
|
+
};
|
|
217
|
+
readonly website: {
|
|
218
|
+
readonly url: string;
|
|
219
|
+
readonly evidence: {
|
|
220
|
+
readonly url: string;
|
|
221
|
+
readonly sha256: string;
|
|
222
|
+
readonly observedAt: string;
|
|
223
|
+
readonly kind: "issuer-filing" | "issuer-website";
|
|
224
|
+
};
|
|
225
|
+
} | null;
|
|
226
|
+
};
|
|
227
|
+
} | {
|
|
228
|
+
readonly status: "unresolved";
|
|
229
|
+
readonly reason: "AMBIGUOUS" | "IDENTITY_MISMATCH" | "INVALID_EVIDENCE" | "NO_EVIDENCE";
|
|
230
|
+
} | undefined;
|
|
231
|
+
readonly sources?: {
|
|
232
|
+
readonly asx?: {
|
|
233
|
+
readonly source: "asx" | "google-finance" | "morningstar";
|
|
234
|
+
readonly ticker: string;
|
|
235
|
+
readonly sourceUrl: string;
|
|
236
|
+
readonly sourceId: string;
|
|
237
|
+
readonly status: "found" | "missing";
|
|
238
|
+
readonly startedAt: string;
|
|
239
|
+
readonly observedAt: string;
|
|
240
|
+
readonly payload: {
|
|
241
|
+
readonly [x: string]: Schema.Json;
|
|
242
|
+
};
|
|
243
|
+
readonly websites: readonly string[];
|
|
244
|
+
} | undefined;
|
|
245
|
+
readonly morningstar?: {
|
|
246
|
+
readonly source: "asx" | "google-finance" | "morningstar";
|
|
247
|
+
readonly ticker: string;
|
|
248
|
+
readonly sourceUrl: string;
|
|
249
|
+
readonly sourceId: string;
|
|
250
|
+
readonly status: "found" | "missing";
|
|
251
|
+
readonly startedAt: string;
|
|
252
|
+
readonly observedAt: string;
|
|
253
|
+
readonly payload: {
|
|
254
|
+
readonly [x: string]: Schema.Json;
|
|
255
|
+
};
|
|
256
|
+
readonly websites: readonly string[];
|
|
257
|
+
} | undefined;
|
|
258
|
+
readonly "google-finance"?: {
|
|
259
|
+
readonly source: "asx" | "google-finance" | "morningstar";
|
|
260
|
+
readonly ticker: string;
|
|
261
|
+
readonly sourceUrl: string;
|
|
262
|
+
readonly sourceId: string;
|
|
263
|
+
readonly status: "found" | "missing";
|
|
264
|
+
readonly startedAt: string;
|
|
265
|
+
readonly observedAt: string;
|
|
266
|
+
readonly payload: {
|
|
267
|
+
readonly [x: string]: Schema.Json;
|
|
268
|
+
};
|
|
269
|
+
readonly websites: readonly string[];
|
|
270
|
+
} | undefined;
|
|
271
|
+
} | undefined;
|
|
272
|
+
}[];
|
|
273
|
+
}>;
|
|
274
|
+
batch: (checkpoint: unknown, options: {
|
|
275
|
+
batchSize: number;
|
|
276
|
+
intervalMs: number;
|
|
277
|
+
signal?: AbortSignal;
|
|
278
|
+
}) => Promise<{
|
|
279
|
+
checkpoint: {
|
|
280
|
+
formatVersion: 1;
|
|
281
|
+
runId: string;
|
|
282
|
+
baseGeneration: string | null;
|
|
283
|
+
directory: {
|
|
284
|
+
readonly entries: readonly {
|
|
285
|
+
readonly ticker: string;
|
|
286
|
+
readonly companyName: string;
|
|
287
|
+
readonly industryGroup: string | null;
|
|
288
|
+
readonly listingDate: string | null;
|
|
289
|
+
readonly marketCapitalisation: number | null;
|
|
290
|
+
}[];
|
|
291
|
+
readonly observedAt: string;
|
|
292
|
+
};
|
|
293
|
+
attempts: {
|
|
294
|
+
readonly ticker: string;
|
|
295
|
+
readonly outcome: {
|
|
296
|
+
readonly _tag: "AsxError";
|
|
297
|
+
readonly code: "ACCESS_DENIED" | "CANCELLED" | "CONFIGURATION_ERROR" | "COVERAGE_REJECTED" | "INTERNAL_ERROR" | "INVALID_INPUT" | "PARSE_FAILED" | "PERSISTENCE_FAILED" | "PUBLICATION_CONFLICT" | "RATE_LIMITED" | "SNAPSHOT_UNAVAILABLE" | "SOURCE_MISMATCH" | "TIMEOUT" | "TRANSPORT_FAILED" | "UPSTREAM_REJECTED" | "UPSTREAM_UNAVAILABLE";
|
|
298
|
+
} | {
|
|
299
|
+
readonly status: "found";
|
|
300
|
+
readonly observation: {
|
|
301
|
+
readonly company: {
|
|
302
|
+
readonly raw?: {
|
|
303
|
+
readonly [x: string]: Schema.Json;
|
|
304
|
+
} | undefined;
|
|
305
|
+
readonly ticker: string;
|
|
306
|
+
readonly sourceId: string;
|
|
307
|
+
readonly companyName: string;
|
|
308
|
+
readonly address: string | null;
|
|
309
|
+
readonly tel: string | null;
|
|
310
|
+
readonly fax: string | null;
|
|
311
|
+
readonly website: string | null;
|
|
312
|
+
readonly description: string | null;
|
|
313
|
+
readonly issueType: string | null;
|
|
314
|
+
readonly foreignExempt: boolean | null;
|
|
315
|
+
readonly people: readonly {
|
|
316
|
+
readonly sourceName: string;
|
|
317
|
+
readonly displayName: string;
|
|
318
|
+
readonly title: string;
|
|
319
|
+
readonly sourceCategory: "directors" | "secretaries";
|
|
320
|
+
}[];
|
|
321
|
+
};
|
|
322
|
+
readonly startedAt: string;
|
|
323
|
+
readonly observedAt: string;
|
|
324
|
+
readonly lastChangedAt: string;
|
|
325
|
+
};
|
|
326
|
+
} | {
|
|
327
|
+
readonly status: "missing";
|
|
328
|
+
readonly startedAt: string;
|
|
329
|
+
readonly observedAt: string;
|
|
330
|
+
readonly raw?: {
|
|
331
|
+
readonly [x: string]: Schema.Json;
|
|
332
|
+
} | undefined;
|
|
333
|
+
};
|
|
334
|
+
readonly enrichment?: {
|
|
335
|
+
readonly _tag: "AsxError";
|
|
336
|
+
readonly code: "ACCESS_DENIED" | "CANCELLED" | "CONFIGURATION_ERROR" | "COVERAGE_REJECTED" | "INTERNAL_ERROR" | "INVALID_INPUT" | "PARSE_FAILED" | "PERSISTENCE_FAILED" | "PUBLICATION_CONFLICT" | "RATE_LIMITED" | "SNAPSHOT_UNAVAILABLE" | "SOURCE_MISMATCH" | "TIMEOUT" | "TRANSPORT_FAILED" | "UPSTREAM_REJECTED" | "UPSTREAM_UNAVAILABLE";
|
|
337
|
+
} | {
|
|
338
|
+
readonly status: "confirmed";
|
|
339
|
+
readonly enrichment: {
|
|
340
|
+
readonly ticker: string;
|
|
341
|
+
readonly sourceId: string;
|
|
342
|
+
readonly abn: string;
|
|
343
|
+
readonly acn: string | null;
|
|
344
|
+
readonly legalName: string;
|
|
345
|
+
readonly identityEvidence: {
|
|
346
|
+
readonly url: string;
|
|
347
|
+
readonly sha256: string;
|
|
348
|
+
readonly observedAt: string;
|
|
349
|
+
readonly kind: "issuer-filing" | "issuer-website";
|
|
350
|
+
};
|
|
351
|
+
readonly abrEvidence: {
|
|
352
|
+
readonly source: "abr-live" | "abr-snapshot";
|
|
353
|
+
readonly observedAt: string;
|
|
354
|
+
};
|
|
355
|
+
readonly website: {
|
|
356
|
+
readonly url: string;
|
|
357
|
+
readonly evidence: {
|
|
358
|
+
readonly url: string;
|
|
359
|
+
readonly sha256: string;
|
|
360
|
+
readonly observedAt: string;
|
|
361
|
+
readonly kind: "issuer-filing" | "issuer-website";
|
|
362
|
+
};
|
|
363
|
+
} | null;
|
|
364
|
+
};
|
|
365
|
+
} | {
|
|
366
|
+
readonly status: "unresolved";
|
|
367
|
+
readonly reason: "AMBIGUOUS" | "IDENTITY_MISMATCH" | "INVALID_EVIDENCE" | "NO_EVIDENCE";
|
|
368
|
+
} | undefined;
|
|
369
|
+
readonly sources?: {
|
|
370
|
+
readonly asx?: {
|
|
371
|
+
readonly source: "asx" | "google-finance" | "morningstar";
|
|
372
|
+
readonly ticker: string;
|
|
373
|
+
readonly sourceUrl: string;
|
|
374
|
+
readonly sourceId: string;
|
|
375
|
+
readonly status: "found" | "missing";
|
|
376
|
+
readonly startedAt: string;
|
|
377
|
+
readonly observedAt: string;
|
|
378
|
+
readonly payload: {
|
|
379
|
+
readonly [x: string]: Schema.Json;
|
|
380
|
+
};
|
|
381
|
+
readonly websites: readonly string[];
|
|
382
|
+
} | undefined;
|
|
383
|
+
readonly morningstar?: {
|
|
384
|
+
readonly source: "asx" | "google-finance" | "morningstar";
|
|
385
|
+
readonly ticker: string;
|
|
386
|
+
readonly sourceUrl: string;
|
|
387
|
+
readonly sourceId: string;
|
|
388
|
+
readonly status: "found" | "missing";
|
|
389
|
+
readonly startedAt: string;
|
|
390
|
+
readonly observedAt: string;
|
|
391
|
+
readonly payload: {
|
|
392
|
+
readonly [x: string]: Schema.Json;
|
|
393
|
+
};
|
|
394
|
+
readonly websites: readonly string[];
|
|
395
|
+
} | undefined;
|
|
396
|
+
readonly "google-finance"?: {
|
|
397
|
+
readonly source: "asx" | "google-finance" | "morningstar";
|
|
398
|
+
readonly ticker: string;
|
|
399
|
+
readonly sourceUrl: string;
|
|
400
|
+
readonly sourceId: string;
|
|
401
|
+
readonly status: "found" | "missing";
|
|
402
|
+
readonly startedAt: string;
|
|
403
|
+
readonly observedAt: string;
|
|
404
|
+
readonly payload: {
|
|
405
|
+
readonly [x: string]: Schema.Json;
|
|
406
|
+
};
|
|
407
|
+
readonly websites: readonly string[];
|
|
408
|
+
} | undefined;
|
|
409
|
+
} | undefined;
|
|
410
|
+
}[];
|
|
411
|
+
};
|
|
412
|
+
complete: boolean;
|
|
413
|
+
halted: {
|
|
414
|
+
readonly _tag: "AsxError";
|
|
415
|
+
readonly code: "ACCESS_DENIED" | "CANCELLED" | "CONFIGURATION_ERROR" | "COVERAGE_REJECTED" | "INTERNAL_ERROR" | "INVALID_INPUT" | "PARSE_FAILED" | "PERSISTENCE_FAILED" | "PUBLICATION_CONFLICT" | "RATE_LIMITED" | "SNAPSHOT_UNAVAILABLE" | "SOURCE_MISMATCH" | "TIMEOUT" | "TRANSPORT_FAILED" | "UPSTREAM_REJECTED" | "UPSTREAM_UNAVAILABLE";
|
|
416
|
+
};
|
|
417
|
+
} | {
|
|
418
|
+
checkpoint: {
|
|
419
|
+
readonly formatVersion: 1;
|
|
420
|
+
readonly runId: string;
|
|
421
|
+
readonly baseGeneration: string | null;
|
|
422
|
+
readonly directory: {
|
|
423
|
+
readonly entries: readonly {
|
|
424
|
+
readonly ticker: string;
|
|
425
|
+
readonly companyName: string;
|
|
426
|
+
readonly industryGroup: string | null;
|
|
427
|
+
readonly listingDate: string | null;
|
|
428
|
+
readonly marketCapitalisation: number | null;
|
|
429
|
+
}[];
|
|
430
|
+
readonly observedAt: string;
|
|
431
|
+
};
|
|
432
|
+
readonly attempts: readonly {
|
|
433
|
+
readonly ticker: string;
|
|
434
|
+
readonly outcome: {
|
|
435
|
+
readonly _tag: "AsxError";
|
|
436
|
+
readonly code: "ACCESS_DENIED" | "CANCELLED" | "CONFIGURATION_ERROR" | "COVERAGE_REJECTED" | "INTERNAL_ERROR" | "INVALID_INPUT" | "PARSE_FAILED" | "PERSISTENCE_FAILED" | "PUBLICATION_CONFLICT" | "RATE_LIMITED" | "SNAPSHOT_UNAVAILABLE" | "SOURCE_MISMATCH" | "TIMEOUT" | "TRANSPORT_FAILED" | "UPSTREAM_REJECTED" | "UPSTREAM_UNAVAILABLE";
|
|
437
|
+
} | {
|
|
438
|
+
readonly status: "found";
|
|
439
|
+
readonly observation: {
|
|
440
|
+
readonly company: {
|
|
441
|
+
readonly raw?: {
|
|
442
|
+
readonly [x: string]: Schema.Json;
|
|
443
|
+
} | undefined;
|
|
444
|
+
readonly ticker: string;
|
|
445
|
+
readonly sourceId: string;
|
|
446
|
+
readonly companyName: string;
|
|
447
|
+
readonly address: string | null;
|
|
448
|
+
readonly tel: string | null;
|
|
449
|
+
readonly fax: string | null;
|
|
450
|
+
readonly website: string | null;
|
|
451
|
+
readonly description: string | null;
|
|
452
|
+
readonly issueType: string | null;
|
|
453
|
+
readonly foreignExempt: boolean | null;
|
|
454
|
+
readonly people: readonly {
|
|
455
|
+
readonly sourceName: string;
|
|
456
|
+
readonly displayName: string;
|
|
457
|
+
readonly title: string;
|
|
458
|
+
readonly sourceCategory: "directors" | "secretaries";
|
|
459
|
+
}[];
|
|
460
|
+
};
|
|
461
|
+
readonly startedAt: string;
|
|
462
|
+
readonly observedAt: string;
|
|
463
|
+
readonly lastChangedAt: string;
|
|
464
|
+
};
|
|
465
|
+
} | {
|
|
466
|
+
readonly status: "missing";
|
|
467
|
+
readonly startedAt: string;
|
|
468
|
+
readonly observedAt: string;
|
|
469
|
+
readonly raw?: {
|
|
470
|
+
readonly [x: string]: Schema.Json;
|
|
471
|
+
} | undefined;
|
|
472
|
+
};
|
|
473
|
+
readonly enrichment?: {
|
|
474
|
+
readonly _tag: "AsxError";
|
|
475
|
+
readonly code: "ACCESS_DENIED" | "CANCELLED" | "CONFIGURATION_ERROR" | "COVERAGE_REJECTED" | "INTERNAL_ERROR" | "INVALID_INPUT" | "PARSE_FAILED" | "PERSISTENCE_FAILED" | "PUBLICATION_CONFLICT" | "RATE_LIMITED" | "SNAPSHOT_UNAVAILABLE" | "SOURCE_MISMATCH" | "TIMEOUT" | "TRANSPORT_FAILED" | "UPSTREAM_REJECTED" | "UPSTREAM_UNAVAILABLE";
|
|
476
|
+
} | {
|
|
477
|
+
readonly status: "confirmed";
|
|
478
|
+
readonly enrichment: {
|
|
479
|
+
readonly ticker: string;
|
|
480
|
+
readonly sourceId: string;
|
|
481
|
+
readonly abn: string;
|
|
482
|
+
readonly acn: string | null;
|
|
483
|
+
readonly legalName: string;
|
|
484
|
+
readonly identityEvidence: {
|
|
485
|
+
readonly url: string;
|
|
486
|
+
readonly sha256: string;
|
|
487
|
+
readonly observedAt: string;
|
|
488
|
+
readonly kind: "issuer-filing" | "issuer-website";
|
|
489
|
+
};
|
|
490
|
+
readonly abrEvidence: {
|
|
491
|
+
readonly source: "abr-live" | "abr-snapshot";
|
|
492
|
+
readonly observedAt: string;
|
|
493
|
+
};
|
|
494
|
+
readonly website: {
|
|
495
|
+
readonly url: string;
|
|
496
|
+
readonly evidence: {
|
|
497
|
+
readonly url: string;
|
|
498
|
+
readonly sha256: string;
|
|
499
|
+
readonly observedAt: string;
|
|
500
|
+
readonly kind: "issuer-filing" | "issuer-website";
|
|
501
|
+
};
|
|
502
|
+
} | null;
|
|
503
|
+
};
|
|
504
|
+
} | {
|
|
505
|
+
readonly status: "unresolved";
|
|
506
|
+
readonly reason: "AMBIGUOUS" | "IDENTITY_MISMATCH" | "INVALID_EVIDENCE" | "NO_EVIDENCE";
|
|
507
|
+
} | undefined;
|
|
508
|
+
readonly sources?: {
|
|
509
|
+
readonly asx?: {
|
|
510
|
+
readonly source: "asx" | "google-finance" | "morningstar";
|
|
511
|
+
readonly ticker: string;
|
|
512
|
+
readonly sourceUrl: string;
|
|
513
|
+
readonly sourceId: string;
|
|
514
|
+
readonly status: "found" | "missing";
|
|
515
|
+
readonly startedAt: string;
|
|
516
|
+
readonly observedAt: string;
|
|
517
|
+
readonly payload: {
|
|
518
|
+
readonly [x: string]: Schema.Json;
|
|
519
|
+
};
|
|
520
|
+
readonly websites: readonly string[];
|
|
521
|
+
} | undefined;
|
|
522
|
+
readonly morningstar?: {
|
|
523
|
+
readonly source: "asx" | "google-finance" | "morningstar";
|
|
524
|
+
readonly ticker: string;
|
|
525
|
+
readonly sourceUrl: string;
|
|
526
|
+
readonly sourceId: string;
|
|
527
|
+
readonly status: "found" | "missing";
|
|
528
|
+
readonly startedAt: string;
|
|
529
|
+
readonly observedAt: string;
|
|
530
|
+
readonly payload: {
|
|
531
|
+
readonly [x: string]: Schema.Json;
|
|
532
|
+
};
|
|
533
|
+
readonly websites: readonly string[];
|
|
534
|
+
} | undefined;
|
|
535
|
+
readonly "google-finance"?: {
|
|
536
|
+
readonly source: "asx" | "google-finance" | "morningstar";
|
|
537
|
+
readonly ticker: string;
|
|
538
|
+
readonly sourceUrl: string;
|
|
539
|
+
readonly sourceId: string;
|
|
540
|
+
readonly status: "found" | "missing";
|
|
541
|
+
readonly startedAt: string;
|
|
542
|
+
readonly observedAt: string;
|
|
543
|
+
readonly payload: {
|
|
544
|
+
readonly [x: string]: Schema.Json;
|
|
545
|
+
};
|
|
546
|
+
readonly websites: readonly string[];
|
|
547
|
+
} | undefined;
|
|
548
|
+
} | undefined;
|
|
549
|
+
}[];
|
|
550
|
+
};
|
|
551
|
+
complete: boolean;
|
|
552
|
+
halted: null;
|
|
553
|
+
}>;
|
|
554
|
+
};
|
|
555
|
+
export {};
|