UNPKG

@dataswift/hat-js

Version:

HAT JavaScript SDK for web and Node.js

117 lines (116 loc) 2.85 kB
import { BundleStructure } from './bundle.interface'; export interface HatApplication { application: HatApplicationContent; setup: boolean; enabled: boolean; active: boolean; needsUpdating?: boolean; mostRecentData?: string; } export interface HatApplicationContent { id: string; kind: HatApplicationKind; info: HatApplicationInfo; developer: HatApplicationDeveloper; dependencies?: HatApplicationDependencies; permissions: HatApplicationPermissions; setup: HatApplicationSetup; status: HatApplicationStatus; } interface HatApplicationKind { kind: string; url?: string; iosUrl?: string; androidUrl?: string; } interface HatApplicationInfo { version: string; name: string; headline: string; description: HatApplicationDescription; dataUsePurpose: string; graphics: HatApplicationGraphics; hmiDescription?: string; published: boolean; rating: { score: string; points: number; }; supportContact: string; termsUrl: string; updateNotes?: HatApplicationUpdateNotes; primaryColor?: string; } export interface HatApplicationDeveloper { id: string; name: string; url: string; country: string; } interface HatApplicationUpdateNotes { header: string; notes?: Array<string>; } export interface HatApplicationDescription { text: string; markdown: string; html: string; } export interface HatApplicationGraphics { banner: HatApplicationGraphicsSize; logo: HatApplicationGraphicsSize; screenshots: HatApplicationGraphicsSize[]; } interface HatApplicationGraphicsSize { small?: string; normal: string; large?: string; xlarge?: string; } interface HatApplicationPermissions { rolesGranted: { role: string; detail?: string; }[]; dataRequired?: HatApplicationDataRequired; dataRetrieved?: BundleStructure; } interface HatApplicationDataRequired { bundle: BundleStructure; startDate: string; endDate: string; rolling: boolean; } export interface HatApplicationSetup { url?: string; iosUrl?: string; androidUrl?: string; testingUrl?: string; onboarding: HatApplicationOnboarding[]; kind: string; validRedirectUris: string[]; dependencies?: string[]; } interface HatApplicationOnboarding { title: string; illustration: { normal: string; }; description: string; } interface HatApplicationDependencies { plugs: string[]; tools: string[]; contracts: string[]; } interface HatApplicationStatus { compatibility: string; expectedStatus: number; dataPreviewEndpoint: string; recentDataCheckEndpoint: string; staticDataPreviewEndpoint?: string; versionReleaseDate: string; statusUrl: string; kind: string; } export {};