Skip to content

Commit db3b335

Browse files
authored
refactor: Add declare decorator to Interfaces and Types that need t… (#616)
1 parent 1c20b8c commit db3b335

File tree

1 file changed

+62
-62
lines changed
  • renderers/web_core/src/v0_8/types

1 file changed

+62
-62
lines changed

renderers/web_core/src/v0_8/types/types.ts

Lines changed: 62 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ export type MessageProcessor = {
6262
resolvePath(path: string, dataContextPath?: string): string;
6363
};
6464

65-
export type Theme = {
65+
export declare type Theme = {
6666
components: {
6767
AudioPlayer: Record<string, boolean>;
6868
Button: Record<string, boolean>;
@@ -197,7 +197,7 @@ export type Theme = {
197197
/**
198198
* Represents a user-initiated action, sent from the client to the server.
199199
*/
200-
export interface UserAction {
200+
export declare interface UserAction {
201201
/**
202202
* The name of the action, taken from the component's `action.action`
203203
* property.
@@ -221,64 +221,64 @@ export interface UserAction {
221221
}
222222

223223
/** A recursive type for any valid JSON-like value in the data model. */
224-
export type DataValue =
224+
export declare type DataValue =
225225
| string
226226
| number
227227
| boolean
228228
| null
229229
| DataMap
230230
| DataObject
231231
| DataArray;
232-
export type DataObject = { [key: string]: DataValue };
233-
export type DataMap = Map<string, DataValue>;
234-
export type DataArray = DataValue[];
232+
export declare type DataObject = { [key: string]: DataValue };
233+
export declare type DataMap = Map<string, DataValue>;
234+
export declare type DataArray = DataValue[];
235235

236236
/** A template for creating components from a list in the data model. */
237-
export interface ComponentArrayTemplate {
237+
export declare interface ComponentArrayTemplate {
238238
componentId: string;
239239
dataBinding: string;
240240
}
241241

242242
/** Defines a list of child components, either explicitly or via a template. */
243-
export interface ComponentArrayReference {
243+
export declare interface ComponentArrayReference {
244244
explicitList?: string[];
245245
template?: ComponentArrayTemplate;
246246
}
247247

248248
/** Represents the general shape of a component's properties. */
249-
export type ComponentProperties = {
249+
export declare type ComponentProperties = {
250250
// Allow any property, but define known structural ones for type safety.
251251
children?: ComponentArrayReference;
252252
child?: string;
253253
[k: string]: unknown;
254254
};
255255

256256
/** A raw component instance from a SurfaceUpdate message. */
257-
export interface ComponentInstance {
257+
export declare interface ComponentInstance {
258258
id: string;
259259
weight?: number;
260260
component?: ComponentProperties;
261261
}
262262

263-
export interface BeginRenderingMessage {
263+
export declare interface BeginRenderingMessage {
264264
surfaceId: string;
265265
root: string;
266266
styles?: Record<string, string>;
267267
}
268268

269-
export interface SurfaceUpdateMessage {
269+
export declare interface SurfaceUpdateMessage {
270270
surfaceId: string;
271271
components: ComponentInstance[];
272272
}
273273

274-
export interface DataModelUpdate {
274+
export declare interface DataModelUpdate {
275275
surfaceId: string;
276276
path?: string;
277277
contents: ValueMap[];
278278
}
279279

280280
// ValueMap is a type of DataObject for passing to the data model.
281-
export type ValueMap = DataObject & {
281+
export declare type ValueMap = DataObject & {
282282
key: string;
283283
/** May be JSON */
284284
valueString?: string;
@@ -287,11 +287,11 @@ export type ValueMap = DataObject & {
287287
valueMap?: ValueMap[];
288288
};
289289

290-
export interface DeleteSurfaceMessage {
290+
export declare interface DeleteSurfaceMessage {
291291
surfaceId: string;
292292
}
293293

294-
export interface ServerToClientMessage {
294+
export declare interface ServerToClientMessage {
295295
beginRendering?: BeginRenderingMessage;
296296
surfaceUpdate?: SurfaceUpdateMessage;
297297
dataModelUpdate?: DataModelUpdate;
@@ -302,7 +302,7 @@ export interface ServerToClientMessage {
302302
* A recursive type for any value that can appear within a resolved component
303303
* tree. This is the main type that makes the recursive resolution possible.
304304
*/
305-
export type ResolvedValue =
305+
export declare type ResolvedValue =
306306
| string
307307
| number
308308
| boolean
@@ -312,10 +312,10 @@ export type ResolvedValue =
312312
| ResolvedArray;
313313

314314
/** A generic map where each value has been recursively resolved. */
315-
export type ResolvedMap = { [key: string]: ResolvedValue };
315+
export declare type ResolvedMap = { [key: string]: ResolvedValue };
316316

317317
/** A generic array where each item has been recursively resolved. */
318-
export type ResolvedArray = ResolvedValue[];
318+
export declare type ResolvedArray = ResolvedValue[];
319319

320320
/**
321321
* A base interface that all component nodes share.
@@ -327,97 +327,97 @@ interface BaseComponentNode {
327327
slotName?: string;
328328
}
329329

330-
export interface TextNode extends BaseComponentNode {
330+
export declare interface TextNode extends BaseComponentNode {
331331
type: "Text";
332332
properties: ResolvedText;
333333
}
334334

335-
export interface ImageNode extends BaseComponentNode {
335+
export declare interface ImageNode extends BaseComponentNode {
336336
type: "Image";
337337
properties: ResolvedImage;
338338
}
339339

340-
export interface IconNode extends BaseComponentNode {
340+
export declare interface IconNode extends BaseComponentNode {
341341
type: "Icon";
342342
properties: ResolvedIcon;
343343
}
344344

345-
export interface VideoNode extends BaseComponentNode {
345+
export declare interface VideoNode extends BaseComponentNode {
346346
type: "Video";
347347
properties: ResolvedVideo;
348348
}
349349

350-
export interface AudioPlayerNode extends BaseComponentNode {
350+
export declare interface AudioPlayerNode extends BaseComponentNode {
351351
type: "AudioPlayer";
352352
properties: ResolvedAudioPlayer;
353353
}
354354

355-
export interface RowNode extends BaseComponentNode {
355+
export declare interface RowNode extends BaseComponentNode {
356356
type: "Row";
357357
properties: ResolvedRow;
358358
}
359359

360-
export interface ColumnNode extends BaseComponentNode {
360+
export declare interface ColumnNode extends BaseComponentNode {
361361
type: "Column";
362362
properties: ResolvedColumn;
363363
}
364364

365-
export interface ListNode extends BaseComponentNode {
365+
export declare interface ListNode extends BaseComponentNode {
366366
type: "List";
367367
properties: ResolvedList;
368368
}
369369

370-
export interface CardNode extends BaseComponentNode {
370+
export declare interface CardNode extends BaseComponentNode {
371371
type: "Card";
372372
properties: ResolvedCard;
373373
}
374374

375-
export interface TabsNode extends BaseComponentNode {
375+
export declare interface TabsNode extends BaseComponentNode {
376376
type: "Tabs";
377377
properties: ResolvedTabs;
378378
}
379379

380-
export interface DividerNode extends BaseComponentNode {
380+
export declare interface DividerNode extends BaseComponentNode {
381381
type: "Divider";
382382
properties: ResolvedDivider;
383383
}
384384

385-
export interface ModalNode extends BaseComponentNode {
385+
export declare interface ModalNode extends BaseComponentNode {
386386
type: "Modal";
387387
properties: ResolvedModal;
388388
}
389389

390-
export interface ButtonNode extends BaseComponentNode {
390+
export declare interface ButtonNode extends BaseComponentNode {
391391
type: "Button";
392392
properties: ResolvedButton;
393393
}
394394

395-
export interface CheckboxNode extends BaseComponentNode {
395+
export declare interface CheckboxNode extends BaseComponentNode {
396396
type: "CheckBox";
397397
properties: ResolvedCheckbox;
398398
}
399399

400-
export interface TextFieldNode extends BaseComponentNode {
400+
export declare interface TextFieldNode extends BaseComponentNode {
401401
type: "TextField";
402402
properties: ResolvedTextField;
403403
}
404404

405-
export interface DateTimeInputNode extends BaseComponentNode {
405+
export declare interface DateTimeInputNode extends BaseComponentNode {
406406
type: "DateTimeInput";
407407
properties: ResolvedDateTimeInput;
408408
}
409409

410-
export interface MultipleChoiceNode extends BaseComponentNode {
410+
export declare interface MultipleChoiceNode extends BaseComponentNode {
411411
type: "MultipleChoice";
412412
properties: ResolvedMultipleChoice;
413413
}
414414

415-
export interface SliderNode extends BaseComponentNode {
415+
export declare interface SliderNode extends BaseComponentNode {
416416
type: "Slider";
417417
properties: ResolvedSlider;
418418
}
419419

420-
export interface CustomNode extends BaseComponentNode {
420+
export declare interface CustomNode extends BaseComponentNode {
421421
type: string;
422422
// For custom nodes, properties are just a map of string keys to any resolved value.
423423
properties: CustomNodeProperties;
@@ -427,7 +427,7 @@ export interface CustomNode extends BaseComponentNode {
427427
* The complete discriminated union of all possible resolved component nodes.
428428
* A renderer would use this type for any given node in the component tree.
429429
*/
430-
export type AnyComponentNode =
430+
export declare type AnyComponentNode =
431431
| TextNode
432432
| IconNode
433433
| ImageNode
@@ -450,19 +450,19 @@ export type AnyComponentNode =
450450

451451
// These components do not contain other components can reuse their
452452
// original interfaces.
453-
export type ResolvedText = Text;
454-
export type ResolvedIcon = Icon;
455-
export type ResolvedImage = Image;
456-
export type ResolvedVideo = Video;
457-
export type ResolvedAudioPlayer = AudioPlayer;
458-
export type ResolvedDivider = Divider;
459-
export type ResolvedCheckbox = Checkbox;
460-
export type ResolvedTextField = TextField;
461-
export type ResolvedDateTimeInput = DateTimeInput;
462-
export type ResolvedMultipleChoice = MultipleChoice;
463-
export type ResolvedSlider = Slider;
464-
465-
export interface ResolvedRow {
453+
export declare type ResolvedText = Text;
454+
export declare type ResolvedIcon = Icon;
455+
export declare type ResolvedImage = Image;
456+
export declare type ResolvedVideo = Video;
457+
export declare type ResolvedAudioPlayer = AudioPlayer;
458+
export declare type ResolvedDivider = Divider;
459+
export declare type ResolvedCheckbox = Checkbox;
460+
export declare type ResolvedTextField = TextField;
461+
export declare type ResolvedDateTimeInput = DateTimeInput;
462+
export declare type ResolvedMultipleChoice = MultipleChoice;
463+
export declare type ResolvedSlider = Slider;
464+
465+
export declare interface ResolvedRow {
466466
children: AnyComponentNode[];
467467
distribution?:
468468
| "start"
@@ -474,7 +474,7 @@ export interface ResolvedRow {
474474
alignment?: "start" | "center" | "end" | "stretch";
475475
}
476476

477-
export interface ResolvedColumn {
477+
export declare interface ResolvedColumn {
478478
children: AnyComponentNode[];
479479
distribution?:
480480
| "start"
@@ -486,44 +486,44 @@ export interface ResolvedColumn {
486486
alignment?: "start" | "center" | "end" | "stretch";
487487
}
488488

489-
export interface ResolvedButton {
489+
export declare interface ResolvedButton {
490490
child: AnyComponentNode;
491491
action: Button["action"];
492492
}
493493

494-
export interface ResolvedList {
494+
export declare interface ResolvedList {
495495
children: AnyComponentNode[];
496496
direction?: "vertical" | "horizontal";
497497
alignment?: "start" | "center" | "end" | "stretch";
498498
}
499499

500-
export interface ResolvedCard {
500+
export declare interface ResolvedCard {
501501
child: AnyComponentNode;
502502
children: AnyComponentNode[];
503503
}
504504

505-
export interface ResolvedTabItem {
505+
export declare interface ResolvedTabItem {
506506
title: StringValue;
507507
child: AnyComponentNode;
508508
}
509509

510-
export interface ResolvedTabs {
510+
export declare interface ResolvedTabs {
511511
tabItems: ResolvedTabItem[];
512512
}
513513

514-
export interface ResolvedModal {
514+
export declare interface ResolvedModal {
515515
entryPointChild: AnyComponentNode;
516516
contentChild: AnyComponentNode;
517517
}
518518

519-
export interface CustomNodeProperties {
519+
export declare interface CustomNodeProperties {
520520
[k: string]: ResolvedValue;
521521
}
522522

523-
export type SurfaceID = string;
523+
export declare type SurfaceID = string;
524524

525525
/** The complete state of a single UI surface. */
526-
export interface Surface {
526+
export declare interface Surface {
527527
rootComponentId: string | null;
528528
componentTree: AnyComponentNode | null;
529529
dataModel: DataMap;

0 commit comments

Comments
 (0)