/**
 * Intent Adapters
 *
 * Provides conversion between internal Intent type (src/common/types.ts)
 * and canonical Intent type (@vorion/contracts).
 *
 * This adapter layer enables gradual migration to canonical types while
 * maintaining backwards compatibility with existing internal code.
 *
 * @packageDocumentation
 */
import { ActionType, DataSensitivity, Reversibility, TrustBand } from '@vorionsys/contracts';
import type { Canonical } from '@vorionsys/contracts';
import type { Intent as InternalIntent, TrustLevel } from '../common/types.js';
type CanonicalIntent = Canonical.Intent;
type CreateIntentRequest = Canonical.CreateIntentRequest;
/**
 * Maps internal trust level (0-7) to canonical TrustBand enum
 */
export declare function trustLevelToTrustBand(level: TrustLevel | null | undefined): TrustBand;
/**
 * Maps canonical TrustBand enum to internal trust level (0-7)
 */
export declare function trustBandToTrustLevel(band: TrustBand): TrustLevel;
/**
 * Parses action type string to ActionType enum
 */
export declare function parseActionType(value: string | null | undefined): ActionType;
/**
 * Parses data sensitivity string to DataSensitivity enum
 */
export declare function parseDataSensitivity(value: string | null | undefined): DataSensitivity;
/**
 * Parses reversibility string to Reversibility enum
 */
export declare function parseReversibility(value: string | null | undefined): Reversibility;
/**
 * Extended internal intent with optional canonical fields
 * This represents the transitional state where internal intents may have
 * canonical fields attached
 */
export interface ExtendedInternalIntent extends InternalIntent {
    correlationId?: string | null;
    actionType?: string | null;
    resourceScope?: string[] | null;
    dataSensitivity?: string | null;
    reversibility?: string | null;
    expiresAt?: string | null;
    denialReason?: string | null;
    failureReason?: string | null;
    decisionId?: string | null;
    executionId?: string | null;
    source?: string | null;
}
/**
 * Converts internal Intent to canonical Intent format
 *
 * @param internal - Internal intent (may include extended canonical fields)
 * @returns Canonical intent
 */
export declare function toCanonicalIntent(internal: ExtendedInternalIntent): CanonicalIntent;
/**
 * Converts canonical Intent to internal Intent format
 *
 * @param canonical - Canonical intent from @vorion/contracts
 * @returns Internal intent with extended fields
 */
export declare function toInternalIntent(canonical: CanonicalIntent): ExtendedInternalIntent;
/**
 * Converts a CreateIntentRequest to internal submission format
 */
export declare function fromCreateIntentRequest(request: CreateIntentRequest, tenantId: string): {
    submission: {
        entityId: string;
        goal: string;
        context: Record<string, unknown>;
        metadata?: Record<string, unknown>;
        intentType?: string;
        priority?: number;
        idempotencyKey?: string;
    };
    extended: {
        correlationId?: string;
        actionType: string;
        resourceScope: string[];
        dataSensitivity: string;
        reversibility: string;
        expiresAt?: Date;
        source?: string;
    };
};
/**
 * Converts an array of internal intents to canonical format
 */
export declare function toCanonicalIntents(internals: ExtendedInternalIntent[]): CanonicalIntent[];
/**
 * Converts an array of canonical intents to internal format
 */
export declare function toInternalIntents(canonicals: CanonicalIntent[]): ExtendedInternalIntent[];
export {};
//# sourceMappingURL=adapters.d.ts.map