/** SDK-owned platform module. This implementation is maintained in goodvibes-sdk. */
/**
 * Shared primitives for runtime event contract validation.
 */
export interface ContractResult {
    readonly valid: boolean;
    readonly violations: readonly string[];
}
export declare function isString(v: unknown): v is string;
export declare function isNumber(v: unknown): v is number;
export declare function isBoolean(v: unknown): v is boolean;
export declare function isObject(v: unknown): v is Record<string, unknown>;
export type FieldKind = 'string' | 'number' | 'boolean' | 'string[]' | 'enum' | 'object';
export interface FieldSpec {
    readonly key: string;
    readonly kind: FieldKind;
    readonly values?: readonly string[] | undefined;
}
export declare function validateEventFields(type: string, v: unknown, fields: readonly FieldSpec[]): ContractResult;
export interface EventEnvelopeShape {
    readonly traceId: string;
    readonly sessionId: string;
    readonly timestamp: number;
    readonly source: string;
    readonly event: Record<string, unknown>;
}
export declare function validateEnvelope(v: unknown): ContractResult;
//# sourceMappingURL=shared.d.ts.map