/** * 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 } 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 { QA360Server } from './serve/server.js'; export type { ServeConfig } from './serve/server.js';