import type * as OpenFin from '../OpenFin'; import type { Transport } from '../transport/transport'; import type { InteropClient } from './interop'; export declare const environmentUnsupportedMessage = "You are not running in OpenFin."; type EntityType = OpenFin.EntityType; export type EntityTypeHelpers = T extends 'view' ? { isView: true; isWindow: false; isExternal: false; isFrame: false; } : T extends 'window' ? { isView: false; isWindow: true; isExternal: false; isFrame: false; } : T extends 'iframe' ? { isView: false; isWindow: false; isExternal: false; isFrame: true; } : T extends 'external connection' ? { isView: false; isWindow: false; isExternal: true; isFrame: false; } : T extends 'unknown' ? { isView: false; isWindow: false; isExternal: false; isFrame: false; } : never; export declare function getBaseMe(entityType: T, uuid: string, name: string): OpenFin.EntityInfo & EntityTypeHelpers; export interface WithInterop { interop: InteropClient; } export type Me = OpenFin.EntityInfo & (MeType extends 'view' ? EntityTypeHelpers<'view'> & OpenFin.View & WithInterop : MeType extends 'window' ? EntityTypeHelpers<'window'> & OpenFin.Window & WithInterop : MeType extends 'iframe' ? EntityTypeHelpers<'iframe'> & OpenFin.Frame & WithInterop : MeType extends 'external connection' ? EntityTypeHelpers<'external connection'> & OpenFin.ExternalApplication & WithInterop : EntityTypeHelpers & WithInterop) & { isOpenFin: boolean; }; export declare function getMe(wire: Transport): Me; export {};