UNPKG

bc-symbols-mcp

Version:

MCP server for analyzing Business Central .app files and BC object structures

297 lines 6.92 kB
export interface BCApp { id: string; name: string; publisher: string; version: string; description: string; brief: string; platform: string; application: string; runtime: string; target: string; dependencies: BCAppDependency[]; idRanges: BCIdRange[]; filePath: string; fileHash: string; manifest: BCManifest; symbols: BCSymbolReference; } export interface BCAppDependency { id: string; name: string; publisher: string; minVersion: string; compatibilityId: string; } export interface BCIdRange { minObjectId: number; maxObjectId: number; } export interface BCManifest { app: BCAppInfo; idRanges: BCIdRange[]; dependencies: BCAppDependency[]; internalsVisibleTo: string[]; features: string[]; preprocessorSymbols: string[]; suppressWarnings: BCSuppressWarning[]; resourceExposurePolicy: BCResourceExposurePolicy; keyVaultUrls: string[]; build: BCBuildInfo; } export interface BCAppInfo { id: string; name: string; publisher: string; brief: string; description: string; version: string; compatibilityId: string; privacyStatement: string; eula: string; help: string; helpBaseUrl: string; url: string; logo: string; platform: string; application: string; runtime: string; target: string; showMyCode: boolean; } export interface BCSuppressWarning { name: string; } export interface BCResourceExposurePolicy { allowDebugging: boolean; allowDownloadingSource: boolean; includeSourceInSymbolFile: boolean; applyToDevExtension: boolean; } export interface BCBuildInfo { by: string; timestamp: string; compilerVersion: string; } export interface BCSymbolReference { runtimeVersion: string; namespaces: BCNamespace[]; } export interface BCNamespace { name: string; namespaces: BCNamespace[]; tables: BCTable[]; codeunits: BCCodeunit[]; pages: BCPage[]; pageExtensions: BCPageExtension[]; reports: BCReport[]; xmlPorts: BCXmlPort[]; queries: BCQuery[]; controlAddIns: BCControlAddIn[]; enumTypes: BCEnumType[]; dotNetPackages: BCDotNetPackage[]; interfaces: BCInterface[]; permissionSets: BCPermissionSet[]; permissionSetExtensions: BCPermissionSetExtension[]; reportExtensions: BCReportExtension[]; } export interface BCTable { id: number; name: string; referenceSourceFileName: string; properties: BCProperty[]; fields: BCField[]; keys: BCKey[]; methods: BCMethod[]; variables: BCVariable[]; targetObject?: string; } export interface BCCodeunit { id: number; name: string; referenceSourceFileName: string; properties: BCProperty[]; methods: BCMethod[]; variables: BCVariable[]; } export interface BCPage { id: number; name: string; referenceSourceFileName: string; properties: BCProperty[]; controls: BCControl[]; actions: BCAction[]; methods: BCMethod[]; variables: BCVariable[]; hasActionsV2: boolean; } export interface BCPageExtension { id: number; name: string; referenceSourceFileName: string; targetObject: string; variables: BCVariable[]; actionChanges: BCActionChange[]; } export interface BCReport { id: number; name: string; referenceSourceFileName: string; properties: BCProperty[]; methods: BCMethod[]; variables: BCVariable[]; } export interface BCXmlPort { id: number; name: string; referenceSourceFileName: string; properties: BCProperty[]; methods: BCMethod[]; variables: BCVariable[]; } export interface BCQuery { id: number; name: string; referenceSourceFileName: string; properties: BCProperty[]; methods: BCMethod[]; variables: BCVariable[]; } export interface BCControlAddIn { id: number; name: string; referenceSourceFileName: string; properties: BCProperty[]; } export interface BCEnumType { id: number; name: string; referenceSourceFileName: string; properties: BCProperty[]; values: BCEnumValue[]; } export interface BCEnumValue { ordinal: number; name: string; properties: BCProperty[]; } export interface BCDotNetPackage { id: number; name: string; referenceSourceFileName: string; } export interface BCInterface { id: number; name: string; referenceSourceFileName: string; properties: BCProperty[]; methods: BCMethod[]; } export interface BCPermissionSet { id: number; name: string; referenceSourceFileName: string; properties: BCProperty[]; } export interface BCPermissionSetExtension { id: number; name: string; referenceSourceFileName: string; properties: BCProperty[]; } export interface BCReportExtension { id: number; name: string; referenceSourceFileName: string; properties: BCProperty[]; } export interface BCField { id: number; name: string; typeDefinition: BCTypeDefinition; properties: BCProperty[]; } export interface BCKey { name: string; fieldNames: string[]; properties: BCProperty[]; } export interface BCMethod { id: number; name: string; parameters: BCParameter[]; returnTypeDefinition?: BCTypeDefinition; } export interface BCVariable { name: string; typeDefinition: BCTypeDefinition; } export interface BCParameter { name: string; typeDefinition: BCTypeDefinition; isVar?: boolean; } export interface BCTypeDefinition { name: string; subtype?: BCSubtype; typeArguments?: BCTypeDefinition[]; } export interface BCSubtype { name: string; id?: number; moduleId?: string; } export interface BCProperty { name: string; value: string; } export interface BCControl { id: number; name: string; kind: number; typeDefinition: BCTypeDefinition; properties: BCProperty[]; controls: BCControl[]; } export interface BCAction { id: number; name: string; kind: number; properties: BCProperty[]; actions: BCAction[]; targetId?: number; targetName?: string; } export interface BCActionChange { anchor: string; changeKind: number; actions: BCAction[]; } export interface CacheEntry<T> { data: T; timestamp: number; fileHash: string; } export interface AppCache { [filePath: string]: CacheEntry<BCApp>; } export interface ObjectQuery { appIds?: string[]; objectType?: string; objectName?: string; objectId?: number; includeExtensions?: boolean; } export interface DependencyQuery { appId: string; includeTransitive?: boolean; direction?: 'incoming' | 'outgoing' | 'both'; } export interface ReferenceQuery { appIds?: string[]; objectType: string; objectName: string; fieldName?: string; methodName?: string; } //# sourceMappingURL=bc-types.d.ts.map