@ayurak/sdk 1.1.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -277,8 +277,16 @@ console.log(`Monthly cost: $${cost.total_monthly_cost}`);
277
277
  // Get component cost
278
278
  const componentCost = await client.economics.getComponentCost(componentId);
279
279
 
280
- // Get economic intelligence
280
+ // Get economic intelligence (includes Strategic Cost Optimization)
281
281
  const intel = await client.economics.getEconomicIntelligence();
282
+ // Returns: { status: 'success', provider: 'aws', pricing: {...},
283
+ // strategic_optimization: { current: {...}, previous: {...} } }
284
+
285
+ // Refresh Strategic Cost Optimization recommendations (AI-powered)
286
+ // Moves current recommendations to "previous" and generates new ones
287
+ const refresh = await client.economics.refreshRecommendations();
288
+ // Returns: { status: 'success', message: 'Recommendations refreshed',
289
+ // current: {...}, previous: {...} }
282
290
 
283
291
  // Get market intelligence
284
292
  const market = await client.economics.getMarketIntelligence();
@@ -315,6 +323,292 @@ const paths = await client.redTeam.generateAttackPaths(diagramId, {
315
323
  const requirements = await client.redTeam.getSecurityRequirements(diagramId);
316
324
  ```
317
325
 
326
+ ### Severity Assignment (AI-powered)
327
+
328
+ ```typescript
329
+ // Estimate AI cost for severity assignment
330
+ const estimate = await client.compliance.estimateSeverityCost({
331
+ scanId: scanId,
332
+ accountId: accountId
333
+ });
334
+ // Returns: { estimated_tokens: 15000, estimated_cost_usd: 0.45, violations_count: 150 }
335
+
336
+ // Assign severity using AI (automatically analyzes all violations)
337
+ const result = await client.compliance.assignSeverityAI({
338
+ scanId: scanId,
339
+ accountId: accountId,
340
+ model: 'claude-3-sonnet', // or 'gpt-4', 'gemini-pro'
341
+ batchSize: 50
342
+ });
343
+ // Returns: { status: 'completed', processed: 150, updated: 142, errors: 0 }
344
+
345
+ // Manually assign severity to violations
346
+ const manualResult = await client.compliance.assignSeverityManual({
347
+ violationIds: ['v-123', 'v-456'],
348
+ severity: 'high' // critical, high, medium, low, info
349
+ });
350
+ // Returns: { updated: 2, violations: [...] }
351
+ ```
352
+
353
+ ### Scanner Rules
354
+
355
+ ```typescript
356
+ // List scanner rules
357
+ const rules = await client.compliance.listScannerRules({
358
+ severity: 'critical',
359
+ provider: 'aws'
360
+ });
361
+ // Returns: [{ id: '...', name: 'S3 Public Access', severity: 'critical' }, ...]
362
+
363
+ // Get scanner rule statistics
364
+ const stats = await client.compliance.getScannerStatistics();
365
+ // Returns: { total_rules: 500, by_severity: {...}, by_provider: {...} }
366
+
367
+ // Sync rules from cloud providers
368
+ const syncResult = await client.compliance.syncScannerRules({
369
+ providers: ['aws', 'azure', 'gcp']
370
+ });
371
+ // Returns: { synced: 150, new: 25, updated: 10 }
372
+
373
+ // Create custom scanner rule
374
+ const rule = await client.compliance.createScannerRule({
375
+ name: 'Custom S3 Encryption Check',
376
+ description: 'Ensure all S3 buckets have encryption enabled',
377
+ severity: 'high',
378
+ provider: 'aws',
379
+ resourceType: 's3_bucket',
380
+ condition: {
381
+ field: 'encryption.enabled',
382
+ operator: 'equals',
383
+ value: true
384
+ }
385
+ });
386
+ ```
387
+
388
+ ### Dynamic Cloud Scanning
389
+
390
+ ```typescript
391
+ // Execute dynamic scan on cloud account
392
+ const scan = await client.compliance.executeDynamicScan({
393
+ accountId: accountId,
394
+ scanType: 'full', // full, quick, targeted
395
+ resources: ['ec2', 's3', 'iam'],
396
+ standards: ['CIS-AWS', 'SOC2']
397
+ });
398
+ // Returns: { scan_id: '...', status: 'running', estimated_duration: 300 }
399
+
400
+ // Execute unified scan with flexible scope
401
+ const unifiedScan = await client.compliance.executeUnifiedScan({
402
+ scope: 'account', // account, standard, diagram
403
+ scopeId: accountId,
404
+ includeRemediation: true
405
+ });
406
+ // Returns: { scan_id: '...', status: 'queued' }
407
+ ```
408
+
409
+ ### Remediation Execution
410
+
411
+ ```typescript
412
+ // Preview remediation before execution
413
+ const preview = await client.compliance.previewRemediation({
414
+ policyId: policyId,
415
+ accountId: accountId
416
+ });
417
+ // Returns: { actions: [...], risk_level: 'low', affected_resources: 5 }
418
+
419
+ // Execute remediation
420
+ const result = await client.compliance.executeRemediation({
421
+ policyId: policyId,
422
+ accountId: accountId,
423
+ dryRun: false,
424
+ autoApprove: true
425
+ });
426
+ // Returns: { status: 'completed', resources_fixed: 5, rollback_available: true }
427
+ ```
428
+
429
+ ### AI Agents & Self-Healing
430
+
431
+ ```typescript
432
+ // Get AI agent status
433
+ const status = await client.aiAgents.getStatus();
434
+ // Returns: { active: true, agents: [...], capabilities: [...] }
435
+
436
+ // Run specialist agent analysis
437
+ const analysis = await client.aiAgents.runSpecialist({
438
+ agentType: 'security', // security, compliance, cost, architecture
439
+ diagramId: diagramId
440
+ });
441
+
442
+ // Self-healing operations
443
+ const healingStatus = await client.aiAgents.getSelfHealingStatus();
444
+ // Returns: { enabled: true, recent_actions: [...], autonomy_level: 'supervised' }
445
+
446
+ // Get autonomy stats
447
+ const autonomyStats = await client.aiAgents.getAutonomyStats();
448
+ // Returns: { total_remediations: 150, auto_approved: 120, manual_review: 30 }
449
+
450
+ // Trigger remediation
451
+ const remediation = await client.aiAgents.triggerRemediation({
452
+ findingId: findingId,
453
+ autoApprove: false
454
+ });
455
+
456
+ // Approve/reject remediation action
457
+ await client.aiAgents.approveRemediation(remediationId);
458
+ await client.aiAgents.rejectRemediation(remediationId, 'Risk too high');
459
+
460
+ // Rollback remediation
461
+ await client.aiAgents.rollbackRemediation(remediationId);
462
+
463
+ // Emergency stop all autonomous actions
464
+ await client.aiAgents.emergencyStop();
465
+
466
+ // Resume autonomous operations
467
+ await client.aiAgents.resumeOperations();
468
+ ```
469
+
470
+ ### Security Co-Pilot
471
+
472
+ ```typescript
473
+ // Get security co-pilot status
474
+ const status = await client.securityCopilot.getStatus();
475
+ // Returns: { enabled: true, mode: 'supervised', active_threats: 5 }
476
+
477
+ // Get pending actions awaiting approval
478
+ const actions = await client.securityCopilot.getPendingActions();
479
+ // Returns: [{ id: '...', type: 'patch', resource: '...', risk: 'low' }, ...]
480
+
481
+ // Get action history
482
+ const history = await client.securityCopilot.getActionHistory({ limit: 50 });
483
+
484
+ // Get active threats
485
+ const threats = await client.securityCopilot.getActiveThreats();
486
+
487
+ // Approve/reject action
488
+ await client.securityCopilot.approveAction(actionId);
489
+ await client.securityCopilot.rejectAction(actionId);
490
+
491
+ // Rollback action
492
+ await client.securityCopilot.rollbackAction(actionId);
493
+
494
+ // Trigger security scan
495
+ const scan = await client.securityCopilot.triggerScan({ scope: 'full' });
496
+
497
+ // Update settings
498
+ await client.securityCopilot.updateSettings({
499
+ autoRemediation: true,
500
+ maxRiskLevel: 'medium'
501
+ });
502
+
503
+ // Toggle co-pilot on/off
504
+ await client.securityCopilot.toggle(true);
505
+ ```
506
+
507
+ ### Presets Import
508
+
509
+ ```typescript
510
+ // Import compliance presets
511
+ const presets = await client.compliance.importPresets({
512
+ provider: 'aws', // aws, azure, gcp, all
513
+ categories: ['security', 'cost', 'operations']
514
+ });
515
+ // Returns: { imported: 50, standards: [...], rules: [...] }
516
+ ```
517
+
518
+ ### Strategic Remediation Plan (AI-powered)
519
+
520
+ ```typescript
521
+ // Generate strategic remediation plan for a severity level
522
+ // Uses AI to analyze all violations and create a comprehensive plan
523
+ const plan = await client.compliance.generateStrategicPlan({
524
+ scanId: scanId,
525
+ accountId: accountId,
526
+ severity: 'critical' // critical, high, medium, low
527
+ });
528
+ // Returns: {
529
+ // id: 'uuid',
530
+ // severity: 'critical',
531
+ // status: 'generated',
532
+ // overview: 'Strategic overview of all critical violations...',
533
+ // rootCauses: [{ cause: '...', theme: '...', impact: '...' }],
534
+ // groupedViolations: [{ policy: '...', violations: [...] }],
535
+ // highImpactActions: [{ action: '...', impactScore: 95 }],
536
+ // remediationPhases: [{ phase: 1, duration: '1 week', actions: [...] }],
537
+ // successMetrics: [{ metric: '...', target: '...' }],
538
+ // estimatedTotalEffort: '2-3 weeks',
539
+ // costSavingsFinops: { monthly: 5000, annual: 60000 },
540
+ // costSavingsRisk: { riskReduction: '85%', avoidedIncidents: 12 }
541
+ // }
542
+
543
+ // Get existing strategic plan
544
+ const existing = await client.compliance.getStrategicPlan(planId);
545
+
546
+ // List strategic plans for an account
547
+ const plans = await client.compliance.listStrategicPlans({
548
+ accountId: accountId,
549
+ severity: 'critical'
550
+ });
551
+ ```
552
+
553
+ ### Mitigation Plan (AI-powered)
554
+
555
+ ```typescript
556
+ // Get existing mitigation plan for a diagram
557
+ const plan = await client.threatModeling.getMitigationPlan(diagramId);
558
+ if (plan) {
559
+ console.log(`Overview: ${plan.plan.overview}`);
560
+ console.log(`Recommendations: ${plan.plan.recommendations.length}`);
561
+ plan.plan.recommendations.forEach(rec => {
562
+ console.log(` [${rec.rank}] ${rec.title} - ${rec.priority}`);
563
+ });
564
+ }
565
+
566
+ // Generate new mitigation plan (AI-powered, uses chunked processing)
567
+ const newPlan = await client.threatModeling.generateMitigationPlan(diagramId, {
568
+ forceRegenerate: true // Force regenerate even if cached
569
+ });
570
+ // Returns comprehensive plan with:
571
+ // - overview: Strategic summary of all threats
572
+ // - recommendations: Ranked list with code snippets
573
+ // - rootCauses: Identified patterns across threats
574
+ // - remediationPhases: Phased approach with timelines
575
+ // - successMetrics: Measurable criteria
576
+ // - metadata: AI provider, generation time, etc.
577
+
578
+ console.log(`Generated in ${newPlan.plan.metadata.generationTimeMs}ms`);
579
+ console.log(`Threats analyzed: ${newPlan.plan.metadata.threatCount}`);
580
+
581
+ // Access recommendations with code snippets
582
+ newPlan.plan.recommendations.forEach(rec => {
583
+ console.log(`[${rec.priority}] ${rec.title}`);
584
+ console.log(` Impact: ${rec.impact}`);
585
+ console.log(` Effort: ${rec.effort}`);
586
+ console.log(` Affected threats: ${rec.affectedThreats?.join(', ')}`);
587
+ if (rec.codeSnippet) {
588
+ console.log(` Code (${rec.codeLanguage}):`);
589
+ console.log(` ${rec.codeSnippet}`);
590
+ }
591
+ });
592
+
593
+ // View root causes (patterns identified across multiple threats)
594
+ newPlan.plan.rootCauses.forEach(cause => {
595
+ console.log(`Root cause: ${cause.cause}`);
596
+ console.log(` Theme: ${cause.theme}, Impact: ${cause.impact}`);
597
+ });
598
+
599
+ // View phased remediation plan
600
+ newPlan.plan.remediationPhases.forEach(phase => {
601
+ console.log(`Phase: ${phase.phase} (${phase.duration})`);
602
+ console.log(` Actions: ${phase.actions.join(', ')}`);
603
+ console.log(` Threats resolved: ${phase.threatsResolved}`);
604
+ });
605
+
606
+ // Update plan with manual edits
607
+ const updatedPlan = { ...newPlan.plan };
608
+ updatedPlan.recommendations[0].priority = 'immediate';
609
+ await client.threatModeling.updateMitigationPlan(diagramId, updatedPlan);
610
+ ```
611
+
318
612
  ## Error Handling
319
613
 
320
614
  ```typescript
@@ -443,11 +737,35 @@ input?.addEventListener('change', async (e) => {
443
737
  PROJECT_ID: ${{ vars.PROJECT_ID }}
444
738
  ```
445
739
 
740
+ ## Changelog
741
+
742
+ ### v1.5.0
743
+ - **Added**: Strategic Remediation Plan API (`client.compliance.generateStrategicPlan`, `getStrategicPlan`, `listStrategicPlans`) - AI-powered strategic planning for compliance violations with cost savings analysis
744
+ - **Added**: Economic Intelligence Refresh (`client.economics.refreshRecommendations`) - Refresh AI-powered cost optimization recommendations
745
+ - **Added**: Severity Assignment API (`client.compliance.estimateSeverityCost`, `assignSeverityAI`, `assignSeverityManual`)
746
+ - **Added**: Scanner Rules API (`client.compliance.listScannerRules`, `getScannerStatistics`, `syncScannerRules`, `createScannerRule`)
747
+ - **Added**: Dynamic Cloud Scanning (`client.compliance.executeDynamicScan`, `executeUnifiedScan`)
748
+ - **Added**: Remediation Execution (`client.compliance.previewRemediation`, `executeRemediation`)
749
+ - **Added**: AI Agents & Self-Healing module (`client.aiAgents`) with autonomous remediation
750
+ - **Added**: Security Co-Pilot module (`client.securityCopilot`) for supervised security operations
751
+ - **Added**: Presets Import (`client.compliance.importPresets`)
752
+ - **Added**: Mitigation Plan API (`client.threatModeling.getMitigationPlan`, `generateMitigationPlan`, `updateMitigationPlan`) - AI-powered strategic remediation planning with chunked processing
753
+
754
+ ### v1.4.0
755
+ - **Fixed**: Base URL corrected from `api.aribot.aristiun.com` to `api.aribot.ayurak.com`
756
+ - **Added**: AI module (`client.ai`) - usage, quota, models, configure, analyze, queue status
757
+ - **Added**: SBOM module (`client.sbom`) - document management, upload, vulnerability scanning
758
+ - **Added**: Dashboard module (`client.dashboard`) - overview, recent activity, risk summary
759
+ - **Added**: FinOps module (`client.finops`) - cost optimization, recommendations, cost breakdown
760
+ - **Added**: Marketplace module (`client.marketplace`) - templates, categories, featured items
761
+ - **Added**: API Keys module (`client.apiKeys`) - list, create, revoke API keys
762
+ - **Added**: Framework-specific compliance scoring support
763
+
446
764
  ## Support
447
765
 
448
- - Documentation: https://developers.aristiun.com/docs/js-sdk
449
- - API Reference: https://developers.aristiun.com/api
450
- - Issues: https://github.com/Aristiun/aribot-js/issues
766
+ - Documentation: https://developer.ayurak.com/docs/js-sdk
767
+ - API Reference: https://developer.ayurak.com/api
768
+ - Issues: https://github.com/ayurak/aribot-js/issues
451
769
 
452
770
  ## License
453
771
 
package/dist/index.d.mts CHANGED
@@ -640,6 +640,288 @@ declare class EconomicsAPI {
640
640
  }>;
641
641
  }
642
642
 
643
+ interface AIUsage {
644
+ total_requests: number;
645
+ tokens_used: number;
646
+ cost: number;
647
+ period: string;
648
+ [key: string]: unknown;
649
+ }
650
+ interface AIQuota {
651
+ requests_limit: number;
652
+ requests_used: number;
653
+ tokens_limit: number;
654
+ tokens_used: number;
655
+ reset_at: string;
656
+ [key: string]: unknown;
657
+ }
658
+ interface AIModel {
659
+ id: string;
660
+ name: string;
661
+ provider: string;
662
+ capabilities: string[];
663
+ [key: string]: unknown;
664
+ }
665
+ interface AIAnalysisResult {
666
+ analysis_id: string;
667
+ status: string;
668
+ results: unknown;
669
+ [key: string]: unknown;
670
+ }
671
+ interface AIQueueStatus {
672
+ pending: number;
673
+ processing: number;
674
+ completed: number;
675
+ failed: number;
676
+ [key: string]: unknown;
677
+ }
678
+ /**
679
+ * AI usage, quota, and analysis operations
680
+ */
681
+ declare class AIAPI {
682
+ private http;
683
+ constructor(http: HttpClient);
684
+ /**
685
+ * Get AI usage statistics
686
+ */
687
+ getUsage(period?: string): Promise<AIUsage>;
688
+ /**
689
+ * Get AI quota information
690
+ */
691
+ getQuota(): Promise<AIQuota>;
692
+ /**
693
+ * List available AI models
694
+ */
695
+ listModels(): Promise<AIModel[]>;
696
+ /**
697
+ * Configure AI settings
698
+ */
699
+ configure(config: Record<string, unknown>): Promise<Record<string, unknown>>;
700
+ /**
701
+ * Run AI analysis
702
+ */
703
+ analyze(options: {
704
+ target: string;
705
+ type?: string;
706
+ model?: string;
707
+ [key: string]: unknown;
708
+ }): Promise<AIAnalysisResult>;
709
+ /**
710
+ * Get AI processing queue status
711
+ */
712
+ getQueueStatus(): Promise<AIQueueStatus>;
713
+ }
714
+
715
+ interface SBOMDocument {
716
+ id: string;
717
+ name: string;
718
+ format: string;
719
+ status: string;
720
+ created_at: string;
721
+ components_count: number;
722
+ vulnerabilities_count: number;
723
+ [key: string]: unknown;
724
+ }
725
+ interface SBOMVulnerability {
726
+ id: string;
727
+ cve_id: string;
728
+ severity: string;
729
+ description: string;
730
+ affected_component: string;
731
+ fix_available: boolean;
732
+ [key: string]: unknown;
733
+ }
734
+ /**
735
+ * SBOM document management and vulnerability scanning
736
+ */
737
+ declare class SBOMAPI {
738
+ private http;
739
+ constructor(http: HttpClient);
740
+ /**
741
+ * List SBOM documents
742
+ */
743
+ list(params?: Record<string, string | number | boolean>): Promise<SBOMDocument[]>;
744
+ /**
745
+ * Get SBOM document details
746
+ */
747
+ get(documentId: string): Promise<SBOMDocument>;
748
+ /**
749
+ * Upload an SBOM document
750
+ */
751
+ upload(file: File | Blob, options?: {
752
+ name?: string;
753
+ format?: string;
754
+ }): Promise<SBOMDocument>;
755
+ /**
756
+ * Get vulnerabilities for an SBOM document
757
+ */
758
+ getVulnerabilities(documentId: string, params?: Record<string, string | number | boolean>): Promise<SBOMVulnerability[]>;
759
+ }
760
+
761
+ interface DashboardOverview {
762
+ total_diagrams: number;
763
+ total_threats: number;
764
+ compliance_score: number;
765
+ risk_score: number;
766
+ [key: string]: unknown;
767
+ }
768
+ interface RecentActivity {
769
+ id: string;
770
+ type: string;
771
+ description: string;
772
+ timestamp: string;
773
+ [key: string]: unknown;
774
+ }
775
+ interface RiskSummary {
776
+ overall_risk: string;
777
+ critical: number;
778
+ high: number;
779
+ medium: number;
780
+ low: number;
781
+ trend: string;
782
+ [key: string]: unknown;
783
+ }
784
+ /**
785
+ * Dashboard overview, activity, and risk summary
786
+ */
787
+ declare class DashboardAPI {
788
+ private http;
789
+ constructor(http: HttpClient);
790
+ /**
791
+ * Get dashboard overview metrics
792
+ */
793
+ getOverview(): Promise<DashboardOverview>;
794
+ /**
795
+ * Get recent activity
796
+ */
797
+ getRecentActivity(params?: Record<string, string | number | boolean>): Promise<RecentActivity[]>;
798
+ /**
799
+ * Get risk summary
800
+ */
801
+ getRiskSummary(): Promise<RiskSummary>;
802
+ }
803
+
804
+ interface FinOpsRecommendation {
805
+ id: string;
806
+ type: string;
807
+ description: string;
808
+ estimated_savings: number;
809
+ priority: string;
810
+ [key: string]: unknown;
811
+ }
812
+ interface FinOpsCosts {
813
+ total: number;
814
+ by_service: Record<string, number>;
815
+ by_provider: Record<string, number>;
816
+ period: string;
817
+ [key: string]: unknown;
818
+ }
819
+ interface FinOpsOptimization {
820
+ id: string;
821
+ status: string;
822
+ savings_achieved: number;
823
+ details: string;
824
+ [key: string]: unknown;
825
+ }
826
+ /**
827
+ * FinOps cost optimization and recommendations
828
+ */
829
+ declare class FinOpsAPI {
830
+ private http;
831
+ constructor(http: HttpClient);
832
+ /**
833
+ * Get cost optimization recommendations
834
+ */
835
+ getRecommendations(params?: Record<string, string | number | boolean>): Promise<FinOpsRecommendation[]>;
836
+ /**
837
+ * Get cost breakdown
838
+ */
839
+ getCosts(params?: Record<string, string | number | boolean>): Promise<FinOpsCosts>;
840
+ /**
841
+ * Get optimization details
842
+ */
843
+ getOptimization(params?: Record<string, string | number | boolean>): Promise<FinOpsOptimization[]>;
844
+ }
845
+
846
+ interface MarketplaceTemplate {
847
+ id: string;
848
+ name: string;
849
+ description: string;
850
+ category: string;
851
+ author: string;
852
+ downloads: number;
853
+ rating: number;
854
+ [key: string]: unknown;
855
+ }
856
+ interface MarketplaceCategory {
857
+ id: string;
858
+ name: string;
859
+ description: string;
860
+ templates_count: number;
861
+ [key: string]: unknown;
862
+ }
863
+ /**
864
+ * Marketplace templates, categories, and featured items
865
+ */
866
+ declare class MarketplaceAPI {
867
+ private http;
868
+ constructor(http: HttpClient);
869
+ /**
870
+ * List marketplace templates
871
+ */
872
+ listTemplates(params?: Record<string, string | number | boolean>): Promise<MarketplaceTemplate[]>;
873
+ /**
874
+ * List marketplace categories
875
+ */
876
+ listCategories(): Promise<MarketplaceCategory[]>;
877
+ /**
878
+ * Get featured templates
879
+ */
880
+ getFeatured(): Promise<MarketplaceTemplate[]>;
881
+ }
882
+
883
+ interface APIKey {
884
+ id: string;
885
+ name: string;
886
+ prefix: string;
887
+ created_at: string;
888
+ last_used_at: string | null;
889
+ expires_at: string | null;
890
+ is_active: boolean;
891
+ [key: string]: unknown;
892
+ }
893
+ interface APIKeyCreateResult {
894
+ id: string;
895
+ name: string;
896
+ key: string;
897
+ prefix: string;
898
+ created_at: string;
899
+ [key: string]: unknown;
900
+ }
901
+ /**
902
+ * API key management operations
903
+ */
904
+ declare class APIKeysAPI {
905
+ private http;
906
+ constructor(http: HttpClient);
907
+ /**
908
+ * List API keys
909
+ */
910
+ list(params?: Record<string, string | number | boolean>): Promise<APIKey[]>;
911
+ /**
912
+ * Create a new API key
913
+ */
914
+ create(options: {
915
+ name: string;
916
+ expires_in_days?: number;
917
+ scopes?: string[];
918
+ }): Promise<APIKeyCreateResult>;
919
+ /**
920
+ * Revoke an API key
921
+ */
922
+ revoke(keyId: string): Promise<Record<string, unknown>>;
923
+ }
924
+
643
925
  interface AribotOptions {
644
926
  baseUrl?: string;
645
927
  timeout?: number;
@@ -690,6 +972,18 @@ declare class Aribot {
690
972
  digitalTwin: DigitalTwinAPI;
691
973
  /** Economics and cost analysis */
692
974
  economics: EconomicsAPI;
975
+ /** AI usage and analysis */
976
+ ai: AIAPI;
977
+ /** SBOM document management */
978
+ sbom: SBOMAPI;
979
+ /** Dashboard overview and metrics */
980
+ dashboard: DashboardAPI;
981
+ /** FinOps cost optimization */
982
+ finops: FinOpsAPI;
983
+ /** Marketplace templates */
984
+ marketplace: MarketplaceAPI;
985
+ /** API key management */
986
+ apiKeys: APIKeysAPI;
693
987
  /**
694
988
  * Create Aribot client
695
989
  *
@@ -759,4 +1053,4 @@ declare class ServerError extends AribotError {
759
1053
  constructor(message: string, statusCode?: number, response?: Record<string, unknown>);
760
1054
  }
761
1055
 
762
- export { type AnalyzeDiagramOptions, Aribot, AribotError, type AribotOptions, AuthenticationError, type CloudAccount, type CloudFinding, type CloudProvider, type CloudResource, type CloudScan, type CloudScanOptions, CloudSecurityAPI, ComplianceAPI, type ComplianceGap, type ComplianceResult, type ScanOptions$1 as ComplianceScanOptions, type ComplianceStandard, type Component, type ComponentCloudMapping, type ComponentCost, type Control, type CreateProjectOptions, type Diagram, type DiagramComponentStatus, type DiagramCostAnalysis, DigitalTwinAPI, EconomicsAPI, type EconomicsDashboard, type Finding, type GatesConfig, type GetFindingsOptions, type ListDiagramsOptions, type ListScansOptions, type MarketIntelligence, NotFoundError, PipelineAPI, type PipelineScan, type ScanOptions as PipelineScanOptions, type Project, RateLimitError, RedTeamAPI, type RedTeamMethodology, type RedTeamSimulation, ServerError, type Threat, type ThreatIntelligence, ThreatModelingAPI, ValidationError };
1056
+ export { AIAPI, type AIAnalysisResult, type AIModel, type AIQueueStatus, type AIQuota, type AIUsage, type APIKey, type APIKeyCreateResult, APIKeysAPI, type AnalyzeDiagramOptions, Aribot, AribotError, type AribotOptions, AuthenticationError, type CloudAccount, type CloudFinding, type CloudProvider, type CloudResource, type CloudScan, type CloudScanOptions, CloudSecurityAPI, ComplianceAPI, type ComplianceGap, type ComplianceResult, type ScanOptions$1 as ComplianceScanOptions, type ComplianceStandard, type Component, type ComponentCloudMapping, type ComponentCost, type Control, type CreateProjectOptions, DashboardAPI, type DashboardOverview, type Diagram, type DiagramComponentStatus, type DiagramCostAnalysis, DigitalTwinAPI, EconomicsAPI, type EconomicsDashboard, FinOpsAPI, type FinOpsCosts, type FinOpsOptimization, type FinOpsRecommendation, type Finding, type GatesConfig, type GetFindingsOptions, type ListDiagramsOptions, type ListScansOptions, type MarketIntelligence, MarketplaceAPI, type MarketplaceCategory, type MarketplaceTemplate, NotFoundError, PipelineAPI, type PipelineScan, type ScanOptions as PipelineScanOptions, type Project, RateLimitError, type RecentActivity, RedTeamAPI, type RedTeamMethodology, type RedTeamSimulation, type RiskSummary, SBOMAPI, type SBOMDocument, type SBOMVulnerability, ServerError, type Threat, type ThreatIntelligence, ThreatModelingAPI, ValidationError };