@sudobility/whisperly_types 1.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.
package/dist/index.cjs ADDED
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ /**
3
+ * @sudobility/whisperly_types
4
+ * TypeScript types for Whisperly API - Localization SaaS platform
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.successResponse = successResponse;
8
+ exports.errorResponse = errorResponse;
9
+ // =============================================================================
10
+ // Response Helper Functions
11
+ // =============================================================================
12
+ /** Create a success response */
13
+ function successResponse(data) {
14
+ return {
15
+ success: true,
16
+ data,
17
+ timestamp: new Date().toISOString(),
18
+ };
19
+ }
20
+ /** Create an error response */
21
+ function errorResponse(error) {
22
+ return {
23
+ success: false,
24
+ error,
25
+ timestamp: new Date().toISOString(),
26
+ };
27
+ }
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,208 @@
1
+ /**
2
+ * @sudobility/whisperly_types
3
+ * TypeScript types for Whisperly API - Localization SaaS platform
4
+ */
5
+ export type { ApiResponse, BaseResponse, NetworkClient, Optional, PaginatedResponse, PaginationInfo, PaginationOptions, } from '@sudobility/types';
6
+ import type { Optional, BaseResponse } from '@sudobility/types';
7
+ export type HttpMethod = 'GET' | 'POST';
8
+ export type SubscriptionTier = 'starter' | 'pro' | 'enterprise';
9
+ export interface User {
10
+ id: string;
11
+ firebase_uid: string;
12
+ email: string | null;
13
+ display_name: string | null;
14
+ created_at: Date | null;
15
+ updated_at: Date | null;
16
+ }
17
+ export interface UserSettings {
18
+ id: string | null;
19
+ user_id: string;
20
+ organization_name: string | null;
21
+ organization_path: string;
22
+ is_default: boolean;
23
+ created_at: Date | null;
24
+ updated_at: Date | null;
25
+ }
26
+ export interface Project {
27
+ id: string;
28
+ user_id: string;
29
+ project_name: string;
30
+ display_name: string;
31
+ description: string | null;
32
+ instructions: string | null;
33
+ is_active: boolean | null;
34
+ created_at: Date | null;
35
+ updated_at: Date | null;
36
+ }
37
+ export interface Glossary {
38
+ id: string;
39
+ project_id: string;
40
+ term: string;
41
+ translations: Record<string, string>;
42
+ context: string | null;
43
+ created_at: Date | null;
44
+ updated_at: Date | null;
45
+ }
46
+ export interface Subscription {
47
+ id: string;
48
+ user_id: string;
49
+ tier: SubscriptionTier;
50
+ revenuecat_entitlement: string;
51
+ monthly_request_limit: number;
52
+ hourly_request_limit: number;
53
+ requests_this_month: number;
54
+ requests_this_hour: number;
55
+ month_reset_at: Date | null;
56
+ hour_reset_at: Date | null;
57
+ created_at: Date | null;
58
+ updated_at: Date | null;
59
+ }
60
+ export interface UsageRecord {
61
+ id: string;
62
+ user_id: string;
63
+ project_id: string;
64
+ timestamp: Date;
65
+ request_count: number;
66
+ string_count: number;
67
+ character_count: number;
68
+ success: boolean;
69
+ error_message: string | null;
70
+ }
71
+ export interface UserCreateRequest {
72
+ firebase_uid: string;
73
+ email: Optional<string>;
74
+ display_name: Optional<string>;
75
+ }
76
+ export interface UserUpdateRequest {
77
+ email: Optional<string>;
78
+ display_name: Optional<string>;
79
+ }
80
+ export interface UserSettingsUpdateRequest {
81
+ organization_name: Optional<string>;
82
+ organization_path: Optional<string>;
83
+ }
84
+ export interface ProjectCreateRequest {
85
+ project_name: string;
86
+ display_name: string;
87
+ description: Optional<string>;
88
+ instructions: Optional<string>;
89
+ }
90
+ export interface ProjectUpdateRequest {
91
+ project_name: Optional<string>;
92
+ display_name: Optional<string>;
93
+ description: Optional<string>;
94
+ instructions: Optional<string>;
95
+ is_active: Optional<boolean>;
96
+ }
97
+ export interface GlossaryCreateRequest {
98
+ term: string;
99
+ translations: Record<string, string>;
100
+ context: Optional<string>;
101
+ }
102
+ export interface GlossaryUpdateRequest {
103
+ term: Optional<string>;
104
+ translations: Optional<Record<string, string>>;
105
+ context: Optional<string>;
106
+ }
107
+ export interface ProjectQueryParams {
108
+ is_active: Optional<string>;
109
+ }
110
+ export interface GlossaryQueryParams {
111
+ search: Optional<string>;
112
+ }
113
+ export interface UsageAnalyticsQueryParams {
114
+ project_id: Optional<string>;
115
+ start_date: Optional<string>;
116
+ end_date: Optional<string>;
117
+ success: Optional<string>;
118
+ }
119
+ export interface TranslationRequest {
120
+ strings: string[];
121
+ target_languages: string[];
122
+ source_language: Optional<string>;
123
+ }
124
+ export interface TranslationResponse {
125
+ translations: Record<string, string[]>;
126
+ glossaries_used: string[];
127
+ request_id: string;
128
+ }
129
+ export interface GlossaryLookupRequest {
130
+ glossary: string;
131
+ languages: string;
132
+ }
133
+ export interface GlossaryLookupResponse {
134
+ glossary: string;
135
+ translations: Record<string, string | null>;
136
+ }
137
+ export interface UsageAggregate {
138
+ total_requests: number;
139
+ total_strings: number;
140
+ total_characters: number;
141
+ successful_requests: number;
142
+ failed_requests: number;
143
+ success_rate: number;
144
+ period_start: string;
145
+ period_end: string;
146
+ }
147
+ export interface UsageByProject {
148
+ project_id: string;
149
+ project_name: string;
150
+ request_count: number;
151
+ string_count: number;
152
+ character_count: number;
153
+ success_rate: number;
154
+ }
155
+ export interface UsageByDate {
156
+ date: string;
157
+ request_count: number;
158
+ string_count: number;
159
+ character_count: number;
160
+ }
161
+ export interface AnalyticsResponse {
162
+ aggregate: UsageAggregate;
163
+ by_project: UsageByProject[];
164
+ by_date: UsageByDate[];
165
+ }
166
+ export interface RateLimitStatus {
167
+ tier: SubscriptionTier;
168
+ monthly_limit: number;
169
+ monthly_used: number;
170
+ monthly_remaining: number;
171
+ hourly_limit: number;
172
+ hourly_used: number;
173
+ hourly_remaining: number;
174
+ resets_at: {
175
+ monthly: string;
176
+ hourly: string;
177
+ };
178
+ }
179
+ export interface TranslationServicePayload {
180
+ target_languages: string[];
181
+ strings: string[];
182
+ glossaries: string[];
183
+ glossary_callback_url: string;
184
+ }
185
+ export interface TranslationServiceResponse {
186
+ translations: Record<string, string[]>;
187
+ }
188
+ /** Create a success response */
189
+ export declare function successResponse<T>(data: T): BaseResponse<T>;
190
+ /** Create an error response */
191
+ export declare function errorResponse(error: string): BaseResponse<never>;
192
+ export type ProjectListResponse = BaseResponse<Project[]>;
193
+ export type GlossaryListResponse = BaseResponse<Glossary[]>;
194
+ export type ProjectResponse = BaseResponse<Project>;
195
+ export type GlossaryResponse = BaseResponse<Glossary>;
196
+ export type UserSettingsResponse = BaseResponse<UserSettings>;
197
+ export type SubscriptionResponse = BaseResponse<Subscription>;
198
+ export type RateLimitResponse = BaseResponse<RateLimitStatus>;
199
+ export type AnalyticsApiResponse = BaseResponse<AnalyticsResponse>;
200
+ export type TranslationApiResponse = BaseResponse<TranslationResponse>;
201
+ export type GlossaryLookupApiResponse = BaseResponse<GlossaryLookupResponse>;
202
+ export type HealthCheckResponse = BaseResponse<HealthCheckData>;
203
+ export interface HealthCheckData {
204
+ name: string;
205
+ version: string;
206
+ status: string;
207
+ }
208
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js ADDED
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ /**
3
+ * @sudobility/whisperly_types
4
+ * TypeScript types for Whisperly API - Localization SaaS platform
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.successResponse = successResponse;
8
+ exports.errorResponse = errorResponse;
9
+ // =============================================================================
10
+ // Response Helper Functions
11
+ // =============================================================================
12
+ /** Create a success response */
13
+ function successResponse(data) {
14
+ return {
15
+ success: true,
16
+ data,
17
+ timestamp: new Date().toISOString(),
18
+ };
19
+ }
20
+ /** Create an error response */
21
+ function errorResponse(error) {
22
+ return {
23
+ success: false,
24
+ error,
25
+ timestamp: new Date().toISOString(),
26
+ };
27
+ }
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AA8QH,0CAMC;AAGD,sCAMC;AApBD,gFAAgF;AAChF,4BAA4B;AAC5B,gFAAgF;AAEhF,gCAAgC;AAChC,SAAgB,eAAe,CAAI,IAAO;IACxC,OAAO;QACL,OAAO,EAAE,IAAI;QACb,IAAI;QACJ,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC;AAED,+BAA+B;AAC/B,SAAgB,aAAa,CAAC,KAAa;IACzC,OAAO;QACL,OAAO,EAAE,KAAK;QACd,KAAK;QACL,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC"}
package/package.json ADDED
@@ -0,0 +1,63 @@
1
+ {
2
+ "name": "@sudobility/whisperly_types",
3
+ "version": "1.0.1",
4
+ "description": "TypeScript types for Whisperly API - Localization SaaS platform",
5
+ "main": "./dist/index.cjs",
6
+ "module": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": "./dist/index.js",
11
+ "require": "./dist/index.cjs",
12
+ "types": "./dist/index.d.ts"
13
+ }
14
+ },
15
+ "scripts": {
16
+ "build": "bun run build:esm && bun run build:cjs",
17
+ "build:esm": "bunx tsc -p tsconfig.esm.json",
18
+ "build:cjs": "bunx tsc -p tsconfig.cjs.json && bun run build:cjs-rename",
19
+ "build:cjs-rename": "find dist -name '*.js' -not -name '*.cjs' -exec sh -c 'cp \"$1\" \"${1%.js}.cjs\"' _ {} \\;",
20
+ "clean": "rm -rf dist",
21
+ "dev": "bunx tsc --watch",
22
+ "typecheck": "bunx tsc --noEmit",
23
+ "lint": "bunx eslint src/",
24
+ "lint:fix": "bunx eslint src/ --fix",
25
+ "format": "bunx prettier --write \"src/**/*.ts\"",
26
+ "format:check": "bunx prettier --check \"src/**/*.ts\"",
27
+ "test": "bunx vitest run",
28
+ "test:watch": "bunx vitest",
29
+ "verify": "bun run typecheck && bun run lint && bun run test && bun run build",
30
+ "prepublishOnly": "bun run clean && bun run verify"
31
+ },
32
+ "files": [
33
+ "dist/**/*"
34
+ ],
35
+ "keywords": [
36
+ "typescript",
37
+ "types",
38
+ "localization",
39
+ "translation",
40
+ "whisperly",
41
+ "api",
42
+ "i18n"
43
+ ],
44
+ "author": "Sudobility",
45
+ "license": "MIT",
46
+ "peerDependencies": {
47
+ "@sudobility/types": "^1.9.36"
48
+ },
49
+ "devDependencies": {
50
+ "@eslint/js": "^9.39.2",
51
+ "@sudobility/types": "^1.9.36",
52
+ "@typescript-eslint/eslint-plugin": "^8.50.0",
53
+ "@typescript-eslint/parser": "^8.50.0",
54
+ "eslint": "^9.39.2",
55
+ "globals": "^16.5.0",
56
+ "prettier": "^3.7.4",
57
+ "typescript": "^5.9.3",
58
+ "vitest": "^4.0.16"
59
+ },
60
+ "publishConfig": {
61
+ "access": "public"
62
+ }
63
+ }