import type { ArtifactDescriptor } from '../artifacts/types.js';
import type { ArtifactStore } from '../artifacts/index.js';
import type { KnowledgeStore } from './store.js';
import type { KnowledgeEdgeRecord, KnowledgeSourceRecord, KnowledgeSourceType } from './types.js';
export type GeneratedKnowledgeProjectionTargetKind = 'source' | 'node' | 'artifact';
export interface GeneratedKnowledgeProjectionInput {
    readonly store: KnowledgeStore;
    readonly artifactStore: ArtifactStore;
    readonly connectorId: string;
    readonly sourceId: string;
    readonly sourceType?: KnowledgeSourceType | undefined;
    readonly canonicalUri: string;
    readonly title: string;
    readonly summary?: string | undefined;
    readonly tags?: readonly string[] | undefined;
    readonly filename: string;
    readonly markdown: string;
    readonly projectionKind: string;
    readonly metadata?: Record<string, unknown> | undefined;
    readonly sourceMetadata?: Record<string, unknown> | undefined;
    readonly artifactMetadata?: Record<string, unknown> | undefined;
    readonly edgeMetadata?: Record<string, unknown> | undefined;
    readonly signal?: AbortSignal | undefined;
    readonly target?: {
        readonly kind: GeneratedKnowledgeProjectionTargetKind;
        readonly id: string;
        readonly relation?: string | undefined;
    };
}
export interface GeneratedKnowledgeProjectionResult {
    readonly artifact: ArtifactDescriptor;
    readonly source: KnowledgeSourceRecord;
    readonly linked?: KnowledgeEdgeRecord | undefined;
    readonly artifactCreated: boolean;
}
export declare function generatedKnowledgeSourceId(kind: string, value: string): string;
export declare function generatedKnowledgeCanonicalUri(kind: string, value: string): string;
export declare function isGeneratedKnowledgeSource(source: KnowledgeSourceRecord): boolean;
export declare function materializeGeneratedKnowledgeProjection(input: GeneratedKnowledgeProjectionInput): Promise<GeneratedKnowledgeProjectionResult>;
//# sourceMappingURL=generated-projections.d.ts.map