@tolinax/ayoune-interfaces 2025.16.24 → 2026.2.3
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 +132 -132
- package/api/IResponseLocals.d.ts +65 -17
- package/data/modelNames.d.ts +1 -0
- package/data/modelNames.js +1 -0
- package/data/modelsAndRights.js +10 -0
- package/interfaces/CostBucketResult.d.ts +40 -0
- package/interfaces/IAdvertiserDomainKPI.d.ts +9 -0
- package/interfaces/IAdvertiserDomainKPI.js +2 -0
- package/interfaces/IGeoIPLocation.d.ts +17 -0
- package/interfaces/IGeoIPLocation.js +2 -0
- package/interfaces/IGoogleAdsAccount.d.ts +19 -0
- package/interfaces/IGoogleAdsAccount.js +2 -0
- package/interfaces/IGratifyLoopView.d.ts +8 -0
- package/interfaces/IGratifyLoopView.js +2 -0
- package/interfaces/IIABCategoryMappings.d.ts +11 -0
- package/interfaces/IIABCategoryMappings.js +2 -0
- package/interfaces/IIndustryBudget.d.ts +22 -0
- package/interfaces/IIndustryBudget.js +2 -0
- package/interfaces/IIndustryKPIs.d.ts +20 -0
- package/interfaces/IIndustryKPIs.js +2 -0
- package/interfaces/IModel.d.ts +3 -0
- package/interfaces/IModel.js +2 -0
- package/interfaces/IStreamPart.d.ts +0 -0
- package/interfaces/IStreamPart.js +1 -0
- package/interfaces/IValues.d.ts +3 -0
- package/interfaces/IValues.js +2 -0
- package/interfaces/IaYOUneAdvertisementLocation.d.ts +12 -0
- package/interfaces/IaYOUneAdvertisementLocation.js +2 -0
- package/interfaces/IaYOUneDomainMeta.d.ts +6 -0
- package/interfaces/IaYOUneDomainMeta.js +2 -0
- package/interfaces/IaYOUneKeywordKPIs.d.ts +162 -0
- package/interfaces/IaYOUneKeywordKPIs.js +13 -0
- package/interfaces/IaYOUneSocialAccounts.d.ts +19 -0
- package/interfaces/IaYOUneSocialAccounts.js +2 -0
- package/interfaces/IaYOUneTrackingParams.d.ts +174 -1
- package/interfaces/index.d.ts +1 -0
- package/interfaces/index.js +1 -0
- package/interfaces//303/216CostBucketResult.d.ts +40 -0
- package/interfaces//303/216CostBucketResult.js +2 -0
- package/package.json +107 -107
- package/interfaces/ICardReaders.d.ts +0 -11
- /package/interfaces/{ICardReaders.js → CostBucketResult.js} +0 -0
package/README.md
CHANGED
|
@@ -1,132 +1,132 @@
|
|
|
1
|
-
# aYOUne Interfaces
|
|
2
|
-
|
|
3
|
-
A comprehensive TypeScript interfaces library for the aYOUne platform - a modular business as a Service platform.
|
|
4
|
-
|
|
5
|
-
[](https://badge.fury.io/js/@tolinax%2Fayoune-interfaces)
|
|
6
|
-
[](https://opensource.org/license/lgpl-3-0)
|
|
7
|
-
|
|
8
|
-
## Overview
|
|
9
|
-
|
|
10
|
-
This library provides TypeScript type definitions and data exports for the aYOUne platform, which includes modules for:
|
|
11
|
-
|
|
12
|
-
- **AI** - Artificial Intelligence services
|
|
13
|
-
- **CRM** - Customer Relationship Management
|
|
14
|
-
- **CMS** - Content Management System
|
|
15
|
-
- **Marketing** - Marketing automation and campaigns
|
|
16
|
-
- **Automation** - Business process automation
|
|
17
|
-
- **PM** - Project Management
|
|
18
|
-
- **E-commerce** - Online store management
|
|
19
|
-
- And many more specialized modules
|
|
20
|
-
|
|
21
|
-
## Installation
|
|
22
|
-
|
|
23
|
-
```bash
|
|
24
|
-
npm install @tolinax/ayoune-interfaces
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
## Usage
|
|
28
|
-
|
|
29
|
-
### Importing Interfaces
|
|
30
|
-
|
|
31
|
-
```typescript
|
|
32
|
-
import { IAPI, ITicket, IaYOUneUser } from '@tolinax/ayoune-interfaces';
|
|
33
|
-
|
|
34
|
-
// Use interfaces for type safety
|
|
35
|
-
const api: IAPI = {
|
|
36
|
-
_customerID: "customer123",
|
|
37
|
-
_clientID: [],
|
|
38
|
-
_subID: [],
|
|
39
|
-
_user: "user456",
|
|
40
|
-
name: "My API",
|
|
41
|
-
callback_url: "https://example.com/callback",
|
|
42
|
-
access_token: "token123",
|
|
43
|
-
access_token_key: "key456",
|
|
44
|
-
active: true,
|
|
45
|
-
scopes: [{ key: "read" }],
|
|
46
|
-
limit: false,
|
|
47
|
-
rateLimit: 1000
|
|
48
|
-
};
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
### Importing Data and Enums
|
|
52
|
-
|
|
53
|
-
```typescript
|
|
54
|
-
import { aYOUneServices, aYOUneModules, aMN } from '@tolinax/ayoune-interfaces';
|
|
55
|
-
|
|
56
|
-
// Access service definitions
|
|
57
|
-
console.log(aYOUneServices); // Array of all aYOUne services with hosts
|
|
58
|
-
|
|
59
|
-
// Access module definitions
|
|
60
|
-
console.log(aYOUneModules); // Array of platform modules
|
|
61
|
-
|
|
62
|
-
// Use model names enum
|
|
63
|
-
const collectionName = aMN.AIConversations; // "AIConversations"
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
## API Reference
|
|
67
|
-
|
|
68
|
-
### Core Interfaces
|
|
69
|
-
|
|
70
|
-
All interfaces extend `IDefaultFields` which provides common MongoDB document fields:
|
|
71
|
-
|
|
72
|
-
- `_id`: ObjectId
|
|
73
|
-
- `created`: Date
|
|
74
|
-
- `updated`: Date
|
|
75
|
-
- Other standard database fields
|
|
76
|
-
|
|
77
|
-
### Data Exports
|
|
78
|
-
|
|
79
|
-
#### Services (`aYOUneServices`)
|
|
80
|
-
Array of service definitions with:
|
|
81
|
-
- `label`: Human-readable service name
|
|
82
|
-
- `module`: Associated platform module
|
|
83
|
-
- `host`: Service hostname
|
|
84
|
-
|
|
85
|
-
#### Modules (`aYOUneModules`)
|
|
86
|
-
Array of platform modules with:
|
|
87
|
-
- `label`: Module display name
|
|
88
|
-
- `module`: Module identifier
|
|
89
|
-
- `host`: Module hostname
|
|
90
|
-
|
|
91
|
-
#### Model Names (`aMN`)
|
|
92
|
-
Enum containing all MongoDB collection names used across the platform.
|
|
93
|
-
|
|
94
|
-
## Development
|
|
95
|
-
|
|
96
|
-
### Building
|
|
97
|
-
|
|
98
|
-
```bash
|
|
99
|
-
npm run build
|
|
100
|
-
```
|
|
101
|
-
|
|
102
|
-
### Release
|
|
103
|
-
|
|
104
|
-
This project uses conventional commits and automated releases:
|
|
105
|
-
|
|
106
|
-
```bash
|
|
107
|
-
npm run release
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
## Platform Architecture
|
|
111
|
-
|
|
112
|
-
The aYOUne platform consists of multiple specialized services:
|
|
113
|
-
|
|
114
|
-
- **Global Services**: Middleware, Datatables, Barcodes, Scripts
|
|
115
|
-
- **AI Services**: Text/Image/Video Generation, Text-to-Speech
|
|
116
|
-
- **CMS Services**: Media, Content Snippets, Dynamic Content
|
|
117
|
-
- **Business Services**: CRM, PM, Marketing, Automation
|
|
118
|
-
- **Analytics**: Statistics, Monitoring, Reporting
|
|
119
|
-
- **E-commerce**: Sales, Purchase, Accounting
|
|
120
|
-
|
|
121
|
-
Each service is independently deployable and communicates through well-defined interfaces provided by this library.
|
|
122
|
-
|
|
123
|
-
## Contributing
|
|
124
|
-
|
|
125
|
-
1. Follow conventional commit format (`feat:`, `fix:`, `docs:`, etc.)
|
|
126
|
-
2. All interfaces should extend `IDefaultFields` when appropriate
|
|
127
|
-
3. Use consistent naming: interfaces start with `I`, data exports use descriptive names
|
|
128
|
-
4. Update CHANGELOG.md entries are generated automatically
|
|
129
|
-
|
|
130
|
-
## License
|
|
131
|
-
|
|
132
|
-
LGPL-3.0 © tolinax
|
|
1
|
+
# aYOUne Interfaces
|
|
2
|
+
|
|
3
|
+
A comprehensive TypeScript interfaces library for the aYOUne platform - a modular business as a Service platform.
|
|
4
|
+
|
|
5
|
+
[](https://badge.fury.io/js/@tolinax%2Fayoune-interfaces)
|
|
6
|
+
[](https://opensource.org/license/lgpl-3-0)
|
|
7
|
+
|
|
8
|
+
## Overview
|
|
9
|
+
|
|
10
|
+
This library provides TypeScript type definitions and data exports for the aYOUne platform, which includes modules for:
|
|
11
|
+
|
|
12
|
+
- **AI** - Artificial Intelligence services
|
|
13
|
+
- **CRM** - Customer Relationship Management
|
|
14
|
+
- **CMS** - Content Management System
|
|
15
|
+
- **Marketing** - Marketing automation and campaigns
|
|
16
|
+
- **Automation** - Business process automation
|
|
17
|
+
- **PM** - Project Management
|
|
18
|
+
- **E-commerce** - Online store management
|
|
19
|
+
- And many more specialized modules
|
|
20
|
+
|
|
21
|
+
## Installation
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
npm install @tolinax/ayoune-interfaces
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Usage
|
|
28
|
+
|
|
29
|
+
### Importing Interfaces
|
|
30
|
+
|
|
31
|
+
```typescript
|
|
32
|
+
import { IAPI, ITicket, IaYOUneUser } from '@tolinax/ayoune-interfaces';
|
|
33
|
+
|
|
34
|
+
// Use interfaces for type safety
|
|
35
|
+
const api: IAPI = {
|
|
36
|
+
_customerID: "customer123",
|
|
37
|
+
_clientID: [],
|
|
38
|
+
_subID: [],
|
|
39
|
+
_user: "user456",
|
|
40
|
+
name: "My API",
|
|
41
|
+
callback_url: "https://example.com/callback",
|
|
42
|
+
access_token: "token123",
|
|
43
|
+
access_token_key: "key456",
|
|
44
|
+
active: true,
|
|
45
|
+
scopes: [{ key: "read" }],
|
|
46
|
+
limit: false,
|
|
47
|
+
rateLimit: 1000
|
|
48
|
+
};
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
### Importing Data and Enums
|
|
52
|
+
|
|
53
|
+
```typescript
|
|
54
|
+
import { aYOUneServices, aYOUneModules, aMN } from '@tolinax/ayoune-interfaces';
|
|
55
|
+
|
|
56
|
+
// Access service definitions
|
|
57
|
+
console.log(aYOUneServices); // Array of all aYOUne services with hosts
|
|
58
|
+
|
|
59
|
+
// Access module definitions
|
|
60
|
+
console.log(aYOUneModules); // Array of platform modules
|
|
61
|
+
|
|
62
|
+
// Use model names enum
|
|
63
|
+
const collectionName = aMN.AIConversations; // "AIConversations"
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## API Reference
|
|
67
|
+
|
|
68
|
+
### Core Interfaces
|
|
69
|
+
|
|
70
|
+
All interfaces extend `IDefaultFields` which provides common MongoDB document fields:
|
|
71
|
+
|
|
72
|
+
- `_id`: ObjectId
|
|
73
|
+
- `created`: Date
|
|
74
|
+
- `updated`: Date
|
|
75
|
+
- Other standard database fields
|
|
76
|
+
|
|
77
|
+
### Data Exports
|
|
78
|
+
|
|
79
|
+
#### Services (`aYOUneServices`)
|
|
80
|
+
Array of service definitions with:
|
|
81
|
+
- `label`: Human-readable service name
|
|
82
|
+
- `module`: Associated platform module
|
|
83
|
+
- `host`: Service hostname
|
|
84
|
+
|
|
85
|
+
#### Modules (`aYOUneModules`)
|
|
86
|
+
Array of platform modules with:
|
|
87
|
+
- `label`: Module display name
|
|
88
|
+
- `module`: Module identifier
|
|
89
|
+
- `host`: Module hostname
|
|
90
|
+
|
|
91
|
+
#### Model Names (`aMN`)
|
|
92
|
+
Enum containing all MongoDB collection names used across the platform.
|
|
93
|
+
|
|
94
|
+
## Development
|
|
95
|
+
|
|
96
|
+
### Building
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
npm run build
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### Release
|
|
103
|
+
|
|
104
|
+
This project uses conventional commits and automated releases:
|
|
105
|
+
|
|
106
|
+
```bash
|
|
107
|
+
npm run release
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
## Platform Architecture
|
|
111
|
+
|
|
112
|
+
The aYOUne platform consists of multiple specialized services:
|
|
113
|
+
|
|
114
|
+
- **Global Services**: Middleware, Datatables, Barcodes, Scripts
|
|
115
|
+
- **AI Services**: Text/Image/Video Generation, Text-to-Speech
|
|
116
|
+
- **CMS Services**: Media, Content Snippets, Dynamic Content
|
|
117
|
+
- **Business Services**: CRM, PM, Marketing, Automation
|
|
118
|
+
- **Analytics**: Statistics, Monitoring, Reporting
|
|
119
|
+
- **E-commerce**: Sales, Purchase, Accounting
|
|
120
|
+
|
|
121
|
+
Each service is independently deployable and communicates through well-defined interfaces provided by this library.
|
|
122
|
+
|
|
123
|
+
## Contributing
|
|
124
|
+
|
|
125
|
+
1. Follow conventional commit format (`feat:`, `fix:`, `docs:`, etc.)
|
|
126
|
+
2. All interfaces should extend `IDefaultFields` when appropriate
|
|
127
|
+
3. Use consistent naming: interfaces start with `I`, data exports use descriptive names
|
|
128
|
+
4. Update CHANGELOG.md entries are generated automatically
|
|
129
|
+
|
|
130
|
+
## License
|
|
131
|
+
|
|
132
|
+
LGPL-3.0 © tolinax
|
package/api/IResponseLocals.d.ts
CHANGED
|
@@ -28,40 +28,88 @@ export interface IResponseCursor {
|
|
|
28
28
|
limit: number;
|
|
29
29
|
[key: string]: any;
|
|
30
30
|
}
|
|
31
|
+
export interface IResponsePage {
|
|
32
|
+
current?: number;
|
|
33
|
+
total?: number;
|
|
34
|
+
size?: number;
|
|
35
|
+
[key: string]: any;
|
|
36
|
+
}
|
|
31
37
|
export interface IResponseRateLimit {
|
|
32
38
|
limit: string;
|
|
33
39
|
remaining: string;
|
|
34
40
|
reset: string;
|
|
35
41
|
resetDate: string;
|
|
36
42
|
}
|
|
37
|
-
export interface
|
|
43
|
+
export interface IResponseIdentity {
|
|
38
44
|
id?: string;
|
|
39
45
|
ids?: string[];
|
|
40
|
-
|
|
46
|
+
apiId?: string;
|
|
47
|
+
patId?: string;
|
|
48
|
+
debugId?: string;
|
|
49
|
+
}
|
|
50
|
+
export interface IResponseAuth {
|
|
41
51
|
user?: IaYOUneUser | IConsumer;
|
|
42
52
|
_consumer?: IConsumer;
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
53
|
+
isAPI?: boolean;
|
|
54
|
+
apiObject?: any;
|
|
55
|
+
}
|
|
56
|
+
export interface IResponseRights {
|
|
57
|
+
requiredRights?: string[];
|
|
58
|
+
userRights?: string[];
|
|
59
|
+
customerRights?: string[];
|
|
60
|
+
}
|
|
61
|
+
export interface IResponseQuery {
|
|
62
|
+
query?: any;
|
|
63
|
+
parsedQuery?: any;
|
|
64
|
+
dbQuery?: any;
|
|
65
|
+
fields?: any;
|
|
66
|
+
cursor?: IResponseCursor;
|
|
67
|
+
page?: IResponsePage;
|
|
68
|
+
}
|
|
69
|
+
export type ResponseMode = "default" | "redirect";
|
|
70
|
+
export type ResponseType = "application/json" | "text/csv" | "application/xml" | "text/yaml" | string;
|
|
71
|
+
export interface IResponseConfig {
|
|
48
72
|
status?: number;
|
|
73
|
+
type?: ResponseType;
|
|
74
|
+
responseData?: any;
|
|
75
|
+
responseMode?: ResponseMode;
|
|
76
|
+
redirectUrl?: string;
|
|
77
|
+
plain?: boolean;
|
|
78
|
+
yaml?: boolean;
|
|
79
|
+
}
|
|
80
|
+
export interface IResponseClient {
|
|
49
81
|
ip?: string;
|
|
50
82
|
location?: IResponseLocationInfo;
|
|
51
|
-
ayouneParams?: Record<string, string>;
|
|
52
|
-
inbound?: IResponseInboundTraffic;
|
|
53
83
|
device?: IResponseDevice;
|
|
54
|
-
|
|
55
|
-
|
|
84
|
+
device_type?: string;
|
|
85
|
+
inbound?: IResponseInboundTraffic;
|
|
86
|
+
}
|
|
87
|
+
export interface IResponseMeta {
|
|
88
|
+
model?: string;
|
|
56
89
|
module?: string;
|
|
57
90
|
space?: string;
|
|
58
91
|
fn?: string;
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
yaml?: boolean;
|
|
64
|
-
rateLimit?: IResponseRateLimit;
|
|
92
|
+
ayouneParams?: Record<string, string>;
|
|
93
|
+
}
|
|
94
|
+
export interface IResponseHypermedia {
|
|
95
|
+
actions?: any[];
|
|
65
96
|
links?: IAPILink[];
|
|
97
|
+
paths?: string[];
|
|
98
|
+
}
|
|
99
|
+
export interface IResponseAudit {
|
|
100
|
+
audit?: any;
|
|
101
|
+
debug?: boolean;
|
|
102
|
+
errors?: any[];
|
|
103
|
+
middlewareFlow?: string[];
|
|
104
|
+
startHrTime?: [number, number];
|
|
105
|
+
}
|
|
106
|
+
export interface IResponseFieldManagement {
|
|
107
|
+
removedFields?: string[];
|
|
108
|
+
updateMode?: "replace" | "merge" | string;
|
|
109
|
+
}
|
|
110
|
+
export interface IResponseLocals extends IResponseIdentity, IResponseAuth, IResponseRights, IResponseQuery, IResponseConfig, IResponseClient, IResponseMeta, IResponseHypermedia, IResponseAudit, IResponseFieldManagement {
|
|
111
|
+
options?: IaYOUneExpressOptions;
|
|
112
|
+
isValid?: boolean;
|
|
113
|
+
rateLimit?: IResponseRateLimit;
|
|
66
114
|
[key: string]: any;
|
|
67
115
|
}
|
package/data/modelNames.d.ts
CHANGED
|
@@ -272,6 +272,7 @@ export declare enum aMN {
|
|
|
272
272
|
GlobalSettings = "GlobalSettings",
|
|
273
273
|
Glossaries = "Glossaries",
|
|
274
274
|
Goals = "Goals",
|
|
275
|
+
GratifyLoopViews = "GratifyLoopViews",
|
|
275
276
|
GoodsReceipts = "GoodsReceipts",
|
|
276
277
|
GoogleAssistantIntents = "GoogleAssistantIntents",
|
|
277
278
|
HashTags = "HashTags",
|
package/data/modelNames.js
CHANGED
|
@@ -276,6 +276,7 @@ var aMN;
|
|
|
276
276
|
aMN["GlobalSettings"] = "GlobalSettings";
|
|
277
277
|
aMN["Glossaries"] = "Glossaries";
|
|
278
278
|
aMN["Goals"] = "Goals";
|
|
279
|
+
aMN["GratifyLoopViews"] = "GratifyLoopViews";
|
|
279
280
|
aMN["GoodsReceipts"] = "GoodsReceipts";
|
|
280
281
|
aMN["GoogleAssistantIntents"] = "GoogleAssistantIntents";
|
|
281
282
|
aMN["HashTags"] = "HashTags";
|
package/data/modelsAndRights.js
CHANGED
|
@@ -2950,6 +2950,16 @@ const modelsAndRights = [
|
|
|
2950
2950
|
allowDuplicate: true,
|
|
2951
2951
|
updateBy: "_id",
|
|
2952
2952
|
},
|
|
2953
|
+
{
|
|
2954
|
+
plural: "GratifyLoopViews",
|
|
2955
|
+
singular: "GratifyLoopView",
|
|
2956
|
+
module: "general",
|
|
2957
|
+
right: "general.gratifyloopviews",
|
|
2958
|
+
readOnly: true,
|
|
2959
|
+
importable: false,
|
|
2960
|
+
allowDuplicate: false,
|
|
2961
|
+
updateBy: "_id",
|
|
2962
|
+
},
|
|
2953
2963
|
{
|
|
2954
2964
|
plural: "GoodsReceipts",
|
|
2955
2965
|
singular: "GoodsReceipt",
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { IDefaultFields } from "./IDefaultFields";
|
|
2
|
+
export interface ICostBucketResult extends IDefaultFields {
|
|
3
|
+
lab: boolean;
|
|
4
|
+
environment: "production" | "lab" | "all";
|
|
5
|
+
_customerID: ObjectId;
|
|
6
|
+
_research: ObjectId;
|
|
7
|
+
date?: Date;
|
|
8
|
+
numKeywords?: number;
|
|
9
|
+
bid?: number;
|
|
10
|
+
maxCPC?: number;
|
|
11
|
+
avgCPC?: number;
|
|
12
|
+
minCPC?: number;
|
|
13
|
+
maxCost?: number;
|
|
14
|
+
avgCost?: number;
|
|
15
|
+
minCost?: number;
|
|
16
|
+
maxClicks?: number;
|
|
17
|
+
avgClicks?: number;
|
|
18
|
+
minClicks?: number;
|
|
19
|
+
maxImpressions?: number;
|
|
20
|
+
avgImpressions?: number;
|
|
21
|
+
minImpressions?: number;
|
|
22
|
+
maxConversions?: number;
|
|
23
|
+
avgConversions?: number;
|
|
24
|
+
minConversions?: number;
|
|
25
|
+
maxConversionRate?: number;
|
|
26
|
+
avgConversionRate?: number;
|
|
27
|
+
minConversionRate?: number;
|
|
28
|
+
maxCTR?: number;
|
|
29
|
+
avgCTR?: number;
|
|
30
|
+
minCTR?: number;
|
|
31
|
+
maxCPA?: number;
|
|
32
|
+
avgCPA?: number;
|
|
33
|
+
minCPA?: number;
|
|
34
|
+
maxAds?: number;
|
|
35
|
+
breakPointMin?: number;
|
|
36
|
+
breakPointMax?: number;
|
|
37
|
+
breakPointAvg?: number;
|
|
38
|
+
market?: string;
|
|
39
|
+
category?: string;
|
|
40
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export interface IGeoIPLocationTracking {
|
|
2
|
+
ip?: string;
|
|
3
|
+
range?: number[];
|
|
4
|
+
country?: string;
|
|
5
|
+
region?: string;
|
|
6
|
+
eu?: string;
|
|
7
|
+
timezone?: string;
|
|
8
|
+
city?: string;
|
|
9
|
+
ll?: number[];
|
|
10
|
+
metro?: number;
|
|
11
|
+
area?: number;
|
|
12
|
+
device?: string;
|
|
13
|
+
query?: string;
|
|
14
|
+
url?: string;
|
|
15
|
+
fingerprint?: string;
|
|
16
|
+
referrer?: string;
|
|
17
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { IDefaultFields } from "./IDefaultFields";
|
|
2
|
+
export interface IGoogleAdsAccount extends IDefaultFields {
|
|
3
|
+
name: string;
|
|
4
|
+
meta: {
|
|
5
|
+
active: boolean;
|
|
6
|
+
oAuthLink: string;
|
|
7
|
+
keyGenLink: string;
|
|
8
|
+
};
|
|
9
|
+
googleAdsClient: {
|
|
10
|
+
client_id: string;
|
|
11
|
+
client_secret: string;
|
|
12
|
+
developer_token: string;
|
|
13
|
+
};
|
|
14
|
+
customerClient: {
|
|
15
|
+
customer_id: string;
|
|
16
|
+
login_customer_id: string;
|
|
17
|
+
refresh_token: string;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IDefaultFields } from "./IDefaultFields";
|
|
2
|
+
import { IaYOUneTrackingParams } from "./IaYOUneTrackingParams";
|
|
3
|
+
import { IGeoIPLocationTracking } from "./IGeoIPLocationTracking";
|
|
4
|
+
export interface IGratifyLoopView extends IaYOUneTrackingParams, IGeoIPLocationTracking, IDefaultFields {
|
|
5
|
+
fingerprint_view?: string;
|
|
6
|
+
fingerprint?: string;
|
|
7
|
+
fingerprint_raw?: any;
|
|
8
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IDefaultFields } from "./IDefaultFields";
|
|
2
|
+
interface Mapping {
|
|
3
|
+
IABCategory: string;
|
|
4
|
+
label: string;
|
|
5
|
+
}
|
|
6
|
+
export interface IIABCategoryMapping extends IDefaultFields {
|
|
7
|
+
_id?: ObjectId;
|
|
8
|
+
_customerID?: ObjectId;
|
|
9
|
+
mappings: Mapping[];
|
|
10
|
+
}
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { IDefaultFields } from "./IDefaultFields";
|
|
2
|
+
export interface IMarketBudget extends IDefaultFields {
|
|
3
|
+
lab: boolean;
|
|
4
|
+
environment: "production" | "lab" | "all";
|
|
5
|
+
_industry: ObjectId;
|
|
6
|
+
_company: ObjectId;
|
|
7
|
+
date: Date;
|
|
8
|
+
domain?: string;
|
|
9
|
+
host?: string;
|
|
10
|
+
ads: number;
|
|
11
|
+
avgPosition: number;
|
|
12
|
+
avgMonthlySearches: number;
|
|
13
|
+
avgCPC: number;
|
|
14
|
+
impressions: number;
|
|
15
|
+
deliveryRate: number;
|
|
16
|
+
termsCount: number;
|
|
17
|
+
terms: any[];
|
|
18
|
+
budget: number;
|
|
19
|
+
market?: string;
|
|
20
|
+
region?: string;
|
|
21
|
+
device?: string;
|
|
22
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { IDefaultFields } from "./IDefaultFields";
|
|
2
|
+
export interface IIndustryKPI extends IDefaultFields {
|
|
3
|
+
lab: boolean;
|
|
4
|
+
environment: "production" | "lab" | "all";
|
|
5
|
+
_industry: ObjectId;
|
|
6
|
+
date: Date;
|
|
7
|
+
host?: string;
|
|
8
|
+
ads: number;
|
|
9
|
+
avgPosition: number;
|
|
10
|
+
avgMonthlySearches: number;
|
|
11
|
+
avgCPC: number;
|
|
12
|
+
impressions: number;
|
|
13
|
+
deliveryRate: number;
|
|
14
|
+
termsCount: number;
|
|
15
|
+
terms: any[];
|
|
16
|
+
budget: number;
|
|
17
|
+
market?: string;
|
|
18
|
+
region?: string;
|
|
19
|
+
device?: string;
|
|
20
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { IDefaultFields } from "./IDefaultFields";
|
|
2
|
+
import { IAddress } from "./IAddress";
|
|
3
|
+
export interface IaYOUneAdvertisementLocation extends IDefaultFields {
|
|
4
|
+
_customerID?: ObjectId;
|
|
5
|
+
name?: string;
|
|
6
|
+
note?: string;
|
|
7
|
+
address?: IAddress;
|
|
8
|
+
prioritizeOwnAds?: boolean;
|
|
9
|
+
ratio?: number;
|
|
10
|
+
mediaTypes?: string[];
|
|
11
|
+
locale?: string;
|
|
12
|
+
}
|