Skip to content

Commit 81b3367

Browse files
authored
🤖 Merge PR DefinitelyTyped#74177 Add support for additional DataSource fields to chartmogul-node by @wscourge
1 parent 1e649af commit 81b3367

File tree

3 files changed

+57
-10
lines changed

3 files changed

+57
-10
lines changed

‎types/chartmogul-node/chartmogul-node-tests.ts‎

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,13 @@ ChartMogul.DataSource.create(config, {
1515
// $ExpectType Promise<DataSource>
1616
ChartMogul.DataSource.retrieve(config, "");
1717

18+
// $ExpectType Promise<DataSource>
19+
ChartMogul.DataSource.retrieve(config, "", {
20+
with_processing_status: true,
21+
with_auto_churn_subscription_setting: true,
22+
with_invoice_handling_setting: true,
23+
});
24+
1825
// $ExpectType Promise<{}>
1926
ChartMogul.DataSource.destroy(config, "");
2027

@@ -23,9 +30,24 @@ ChartMogul.DataSource.all(config, {
2330
name: "",
2431
});
2532

33+
// $ExpectType Promise<DataSources>
34+
ChartMogul.DataSource.all(config, {
35+
name: "",
36+
system: "",
37+
with_processing_status: true,
38+
with_auto_churn_subscription_setting: true,
39+
with_invoice_handling_setting: true,
40+
});
41+
2642
ChartMogul.DataSource.all(config).then(data => {
2743
data.data_sources[0]; // $ExpectType DataSource
2844
data.data_sources[0].name; // $ExpectType string
45+
data.data_sources[0].processing_status!.processed!; // $ExpectType number
46+
data.data_sources[0].processing_status!.pending!; // $ExpectType number
47+
data.data_sources[0].processing_status!.failed!; // $ExpectType number
48+
data.data_sources[0].auto_churn_subscription_setting!.enabled; // $ExpectType boolean
49+
data.data_sources[0].auto_churn_subscription_setting!.interval; // $ExpectType number | null
50+
data.data_sources[0].invoice_handling_setting; // $ExpectType Record<string, any> | undefined
2951
});
3052

3153
// $ExpectType Promise<Customer>

‎types/chartmogul-node/index.d.ts‎

Lines changed: 34 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,23 +14,48 @@ export namespace Ping {
1414
}
1515

1616
export namespace DataSource {
17+
type DataSourceStatus =
18+
| "never_imported"
19+
| "import_complete"
20+
| "import_in_progress"
21+
| "import_failed"
22+
| string
23+
| undefined;
24+
25+
interface ProcessingStatus {
26+
processed?: number;
27+
pending?: number;
28+
failed?: number;
29+
}
30+
interface AutoChurnSubscriptionSetting {
31+
enabled: boolean;
32+
interval: number | null;
33+
}
34+
interface ExtraDataSourceParams {
35+
with_processing_status?: boolean;
36+
with_auto_churn_subscription_setting?: boolean;
37+
with_invoice_handling_setting?: boolean;
38+
}
39+
interface ListDataSourcesParams extends ExtraDataSourceParams {
40+
name?: string;
41+
system?: string;
42+
}
1743
interface DataSource {
18-
uuid?: string | undefined;
44+
uuid?: string;
1945
name: string;
20-
created_at?: string | undefined;
21-
status?: string | undefined;
22-
system?: string | undefined;
46+
created_at?: string;
47+
status?: DataSourceStatus;
48+
system?: string;
49+
processing_status?: ProcessingStatus;
50+
auto_churn_subscription_setting?: AutoChurnSubscriptionSetting;
51+
invoice_handling_setting?: Record<string, any>;
2352
}
2453
interface DataSources {
2554
data_sources: DataSource[];
2655
}
27-
interface ListDataSourcesParams {
28-
name?: string | undefined;
29-
system?: string | undefined;
30-
}
3156

3257
function create(config: Config, data: DataSource): Promise<DataSource>;
33-
function retrieve(config: Config, uuid: string): Promise<DataSource>;
58+
function retrieve(config: Config, uuid: string, params?: ExtraDataSourceParams): Promise<DataSource>;
3459
function destroy(config: Config, uuid: string): Promise<{}>;
3560
function all(config: Config, params?: ListDataSourcesParams): Promise<DataSources>;
3661
}

‎types/chartmogul-node/package.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"private": true,
33
"name": "@types/chartmogul-node",
4-
"version": "2.0.9999",
4+
"version": "3.8.9999",
55
"projects": [
66
"https://github.com/chartmogul/chartmogul-node"
77
],

0 commit comments

Comments
 (0)