UNPKG

@open-condo/miniapp-utils

Version:

A set of helper functions / components / hooks used to build new condo apps fast

64 lines (61 loc) 3.19 kB
import { z } from 'zod'; declare const domainsMapping: z.ZodArray<z.ZodObject<{ from: z.ZodString; to: z.ZodString; }, z.core.$strip>>; declare const IFRAME_PERMISSIONS_SCHEMA: z.ZodDefault<z.ZodObject<{ isFullscreenAllowed: z.ZodPipe<z.ZodOptional<z.ZodNullable<z.ZodBoolean>>, z.ZodTransform<boolean, boolean | null | undefined>>; isMicrophoneAllowed: z.ZodPipe<z.ZodOptional<z.ZodNullable<z.ZodBoolean>>, z.ZodTransform<boolean, boolean | null | undefined>>; isCameraAllowed: z.ZodPipe<z.ZodOptional<z.ZodNullable<z.ZodBoolean>>, z.ZodTransform<boolean, boolean | null | undefined>>; isSpeakerSelectionAllowed: z.ZodPipe<z.ZodOptional<z.ZodNullable<z.ZodBoolean>>, z.ZodTransform<boolean, boolean | null | undefined>>; isClipboardWriteAllowed: z.ZodPipe<z.ZodOptional<z.ZodNullable<z.ZodBoolean>>, z.ZodTransform<boolean, boolean | null | undefined>>; }, z.core.$strip>>; declare const IFRAME_METADATA_SCHEMA: z.ZodObject<{ domainsMapping: z.ZodArray<z.ZodObject<{ from: z.ZodString; to: z.ZodString; }, z.core.$strip>>; permissions: z.ZodDefault<z.ZodObject<{ isFullscreenAllowed: z.ZodPipe<z.ZodOptional<z.ZodNullable<z.ZodBoolean>>, z.ZodTransform<boolean, boolean | null | undefined>>; isMicrophoneAllowed: z.ZodPipe<z.ZodOptional<z.ZodNullable<z.ZodBoolean>>, z.ZodTransform<boolean, boolean | null | undefined>>; isCameraAllowed: z.ZodPipe<z.ZodOptional<z.ZodNullable<z.ZodBoolean>>, z.ZodTransform<boolean, boolean | null | undefined>>; isSpeakerSelectionAllowed: z.ZodPipe<z.ZodOptional<z.ZodNullable<z.ZodBoolean>>, z.ZodTransform<boolean, boolean | null | undefined>>; isClipboardWriteAllowed: z.ZodPipe<z.ZodOptional<z.ZodNullable<z.ZodBoolean>>, z.ZodTransform<boolean, boolean | null | undefined>>; }, z.core.$strip>>; }, z.core.$strip>; declare function buildAllowString(permissions: Partial<IFramePermissions>): string; type DomainsMapping = z.infer<typeof domainsMapping>; type IFramePermissions = z.infer<typeof IFRAME_PERMISSIONS_SCHEMA>; type IFrameMetadata = z.infer<typeof IFRAME_METADATA_SCHEMA>; type GetAppEntrypointParams = { appUrl: string; domainsMapping: Array<{ from: string; to: string; }>; }; declare function getAppEntrypoint({ appUrl, domainsMapping }: GetAppEntrypointParams): string; type MiniappType = { id: string; name?: string | null; appUrl?: string | null; domains?: { mapping: Array<{ from: string; to: string; }>; } | null; isFullscreenAllowed?: boolean | null; isMicrophoneAllowed?: boolean | null; isCameraAllowed?: boolean | null; isSpeakerSelectionAllowed?: boolean | null; }; type MiniappMetaData = { id: string; name: string | null; entrypoint: string; domainsMapping: DomainsMapping; permissions: IFramePermissions; }; declare function extractMiniappMetadata(app: MiniappType): MiniappMetaData | null; export { type DomainsMapping, IFRAME_METADATA_SCHEMA, IFRAME_PERMISSIONS_SCHEMA, type IFrameMetadata, type IFramePermissions, type MiniappMetaData, buildAllowString, extractMiniappMetadata, getAppEntrypoint };