/** * QA360 Core Engine * * The heart of QA360 - handles proof generation, cryptographic signatures, * and evidence vault for verifiable quality assurance. */ export interface Pack { name: string; version: string; description?: string; adapters: string[]; tests: TestSpec[]; hooks?: PackHooks; } export interface TestSpec { name: string; adapter: string; config: Record; } export interface PackHooks { beforeAll?: string[]; afterAll?: string[]; beforeEach?: string[]; afterEach?: string[]; } export interface Proof { id: string; pack: Pack; results: TestResult[]; signature: string; trustScore: number; timestamp: string; metadata: ProofMetadata; } export interface TestResult { testName: string; adapter: string; status: 'passed' | 'failed' | 'skipped'; duration: number; evidence: Evidence[]; error?: string; } export interface Evidence { type: 'screenshot' | 'log' | 'metric' | 'artifact'; data: string | Buffer; metadata: Record; } export interface ProofMetadata { environment: string; platform: string; qa360Version: string; generatedBy: string; } export declare class QA360Core { constructor(); generateProof(pack: Pack, results: TestResult[]): Promise; verifyProof(proof: Proof): Promise; calculateTrustScore(results: TestResult[]): Promise; } export declare const VERSION = "0.9.0-core"; export * from './proof/index.js'; export { EvidenceVault } from './vault/index.js'; export type { RunRecord, GateRecord, FindingRecord, FlakinessRecord, FlakinessPatternRecord, QuarantineRecord } from './vault/index.js'; export { SecurityRedactor } from './security/redactor.js'; export { SecretsManager } from './secrets/manager.js'; export { SecretsCrypto } from './secrets/crypto.js'; export { PackValidator } from './pack/validator.js'; export { PackMigrator } from './pack/migrator.js'; export type { PackConfigV1 } from './types/pack-v1.js'; export * from './ai/index.js'; export * from './discoverer/index.js'; export * from './types/pack-v2.js'; export type { PackConfigV2, AuthConfigV2, AuthProfile, AuthTypeV2, AuthCacheConfig, GateConfigV2, GateBudgets, GateOptions, HooksConfig, Hook, ExecutionConfigV2, ResourceLimits, SecurityBudgets, PerformanceTargets } from './types/pack-v2.js'; export * from './pack-v2/index.js'; export { PackLoaderV2, PackValidatorV2, PackLoadResult } from './pack-v2/index.js'; export type { PackMigrationResultV2, ValidationError } from './pack-v2/index.js'; export * from './auth/index.js'; export * from './upload/index.js'; export * from './generation/index.js'; export { QA360Server } from './serve/server.js'; export type { ServeConfig } from './serve/server.js'; export { Phase3Runner } from './runner/phase3-runner.js'; export type { Phase3RunnerOptions, Phase3RunResult, GateResult } from './runner/phase3-runner.js'; export { PlaywrightNativeApiAdapter, createPlaywrightNativeApiAdapter } from './adapters/playwright-native-api.js'; export type { NativeApiTestConfig, NativeApiSmokeResult } from './adapters/playwright-native-api.js'; export * from './repair/index.js'; export * from './tui/index.js'; export * from './dashboard/index.js'; export * from './flakiness/index.js'; export * from './retry/index.js'; export * from './cache/index.js'; export * from './watch/index.js'; export * from './self-healing/index.js'; export * from './coverage/index.js'; export * from './slo/index.js'; export * from './regression/index.js'; export * from './crawler/index.js'; export { AssertionsEngine, createAssertionsEngine, AssertionResult, AssertionGroupResult, AssertionRunOptions, AssertionError, SoftAssertionError, Assertion, AssertionOperator, AssertionSuite, } from './assertions/index.js'; export type { AssertionType as UiAssertionType } from './assertions/types.js'; export * from './artifacts/index.js'; export { HTMLReporter, generateHTMLReport } from './reporting/index.js'; export type { ReportData, TestReport, StepReport, } from './reporting/index.js'; export type { ScreenshotArtifact as ReportScreenshotArtifact, VideoArtifact as ReportVideoArtifact, TraceArtifact as ReportTraceArtifact, } from './reporting/index.js'; export * from './parallel/index.js'; export * from './sharding/test-sharding.js'; export * from './visual/index.js'; export * from './fixtures/index.js'; export { VitestAdapter } from './adapters/vitest-adapter.js'; export { JestAdapter } from './adapters/jest-adapter.js'; export { PytestAdapter } from './adapters/pytest-adapter.js'; export type { UnitTestConfig, UnitTestResult, UnitTestExecutionResult, CoverageThresholds, CoverageStats, } from './adapters/unit-test-types.js'; export * from './pom/index.js';