import type { BinaryWriteOptions } from "@protobuf-ts/runtime";
import type { IBinaryWriter } from "@protobuf-ts/runtime";
import type { BinaryReadOptions } from "@protobuf-ts/runtime";
import type { IBinaryReader } from "@protobuf-ts/runtime";
import type { PartialMessage } from "@protobuf-ts/runtime";
import { MessageType } from "@protobuf-ts/runtime";
import { Ack } from "./common.js";
import { Timestamp } from "../../google/protobuf/timestamp.js";
import { Struct } from "../../google/protobuf/struct.js";
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryRequestContext
 */
export interface MemoryRequestContext {
    /**
     * @generated from protobuf field: string app_id = 1
     */
    appId: string;
    /**
     * @generated from protobuf field: string subject_user_id = 2
     */
    subjectUserId: string;
}
/**
 * @generated from protobuf message nimi.runtime.v1.AgentCoreBankOwner
 */
export interface AgentCoreBankOwner {
    /**
     * @generated from protobuf field: string agent_id = 1
     */
    agentId: string;
}
/**
 * @generated from protobuf message nimi.runtime.v1.AgentDyadicBankOwner
 */
export interface AgentDyadicBankOwner {
    /**
     * @generated from protobuf field: string agent_id = 1
     */
    agentId: string;
    /**
     * @generated from protobuf field: string user_id = 2
     */
    userId: string;
}
/**
 * @generated from protobuf message nimi.runtime.v1.WorldSharedBankOwner
 */
export interface WorldSharedBankOwner {
    /**
     * @generated from protobuf field: string world_id = 1
     */
    worldId: string;
}
/**
 * @generated from protobuf message nimi.runtime.v1.AppPrivateBankOwner
 */
export interface AppPrivateBankOwner {
    /**
     * @generated from protobuf field: string account_id = 1
     */
    accountId: string;
    /**
     * @generated from protobuf field: string app_id = 2
     */
    appId: string;
}
/**
 * @generated from protobuf message nimi.runtime.v1.WorkspacePrivateBankOwner
 */
export interface WorkspacePrivateBankOwner {
    /**
     * @generated from protobuf field: string account_id = 1
     */
    accountId: string;
    /**
     * @generated from protobuf field: string workspace_id = 2
     */
    workspaceId: string;
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryBankLocator
 */
export interface MemoryBankLocator {
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryBankScope scope = 1
     */
    scope: MemoryBankScope;
    /**
     * @generated from protobuf oneof: owner
     */
    owner: {
        oneofKind: "agentCore";
        /**
         * @generated from protobuf field: nimi.runtime.v1.AgentCoreBankOwner agent_core = 2
         */
        agentCore: AgentCoreBankOwner;
    } | {
        oneofKind: "agentDyadic";
        /**
         * @generated from protobuf field: nimi.runtime.v1.AgentDyadicBankOwner agent_dyadic = 3
         */
        agentDyadic: AgentDyadicBankOwner;
    } | {
        oneofKind: "worldShared";
        /**
         * @generated from protobuf field: nimi.runtime.v1.WorldSharedBankOwner world_shared = 4
         */
        worldShared: WorldSharedBankOwner;
    } | {
        oneofKind: "appPrivate";
        /**
         * @generated from protobuf field: nimi.runtime.v1.AppPrivateBankOwner app_private = 5
         */
        appPrivate: AppPrivateBankOwner;
    } | {
        oneofKind: "workspacePrivate";
        /**
         * @generated from protobuf field: nimi.runtime.v1.WorkspacePrivateBankOwner workspace_private = 6
         */
        workspacePrivate: WorkspacePrivateBankOwner;
    } | {
        oneofKind: undefined;
    };
}
/**
 * @generated from protobuf message nimi.runtime.v1.PublicMemoryBankLocator
 */
export interface PublicMemoryBankLocator {
    /**
     * @generated from protobuf oneof: locator
     */
    locator: {
        oneofKind: "appPrivate";
        /**
         * @generated from protobuf field: nimi.runtime.v1.AppPrivateBankOwner app_private = 1
         */
        appPrivate: AppPrivateBankOwner;
    } | {
        oneofKind: "workspacePrivate";
        /**
         * @generated from protobuf field: nimi.runtime.v1.WorkspacePrivateBankOwner workspace_private = 2
         */
        workspacePrivate: WorkspacePrivateBankOwner;
    } | {
        oneofKind: undefined;
    };
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryBankOwnerFilter
 */
export interface MemoryBankOwnerFilter {
    /**
     * @generated from protobuf oneof: owner
     */
    owner: {
        oneofKind: "agentCore";
        /**
         * @generated from protobuf field: nimi.runtime.v1.AgentCoreBankOwner agent_core = 1
         */
        agentCore: AgentCoreBankOwner;
    } | {
        oneofKind: "agentDyadic";
        /**
         * @generated from protobuf field: nimi.runtime.v1.AgentDyadicBankOwner agent_dyadic = 2
         */
        agentDyadic: AgentDyadicBankOwner;
    } | {
        oneofKind: "worldShared";
        /**
         * @generated from protobuf field: nimi.runtime.v1.WorldSharedBankOwner world_shared = 3
         */
        worldShared: WorldSharedBankOwner;
    } | {
        oneofKind: "appPrivate";
        /**
         * @generated from protobuf field: nimi.runtime.v1.AppPrivateBankOwner app_private = 4
         */
        appPrivate: AppPrivateBankOwner;
    } | {
        oneofKind: "workspacePrivate";
        /**
         * @generated from protobuf field: nimi.runtime.v1.WorkspacePrivateBankOwner workspace_private = 5
         */
        workspacePrivate: WorkspacePrivateBankOwner;
    } | {
        oneofKind: undefined;
    };
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryEmbeddingProfile
 */
export interface MemoryEmbeddingProfile {
    /**
     * @generated from protobuf field: string provider = 1
     */
    provider: string;
    /**
     * @generated from protobuf field: string model_id = 2
     */
    modelId: string;
    /**
     * @generated from protobuf field: int32 dimension = 3
     */
    dimension: number;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryDistanceMetric distance_metric = 4
     */
    distanceMetric: MemoryDistanceMetric;
    /**
     * @generated from protobuf field: string version = 5
     */
    version: string;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryMigrationPolicy migration_policy = 6
     */
    migrationPolicy: MemoryMigrationPolicy;
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryBank
 */
export interface MemoryBank {
    /**
     * @generated from protobuf field: string bank_id = 1
     */
    bankId: string;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryBankLocator locator = 2
     */
    locator?: MemoryBankLocator;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryEmbeddingProfile embedding_profile = 3
     */
    embeddingProfile?: MemoryEmbeddingProfile;
    /**
     * @generated from protobuf field: string display_name = 4
     */
    displayName: string;
    /**
     * @generated from protobuf field: bool canonical_agent_scope = 5
     */
    canonicalAgentScope: boolean;
    /**
     * @generated from protobuf field: bool public_api_writable = 6
     */
    publicApiWritable: boolean;
    /**
     * @generated from protobuf field: google.protobuf.Struct metadata = 7
     */
    metadata?: Struct;
    /**
     * @generated from protobuf field: google.protobuf.Timestamp created_at = 8
     */
    createdAt?: Timestamp;
    /**
     * @generated from protobuf field: google.protobuf.Timestamp updated_at = 9
     */
    updatedAt?: Timestamp;
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryProvenance
 */
export interface MemoryProvenance {
    /**
     * @generated from protobuf field: string source_system = 1
     */
    sourceSystem: string;
    /**
     * @generated from protobuf field: string source_event_id = 2
     */
    sourceEventId: string;
    /**
     * @generated from protobuf field: string author_id = 3
     */
    authorId: string;
    /**
     * @generated from protobuf field: string trace_id = 4
     */
    traceId: string;
    /**
     * @generated from protobuf field: google.protobuf.Timestamp committed_at = 5
     */
    committedAt?: Timestamp;
}
/**
 * @generated from protobuf message nimi.runtime.v1.EpisodicMemoryRecord
 */
export interface EpisodicMemoryRecord {
    /**
     * @generated from protobuf field: string summary = 1
     */
    summary: string;
    /**
     * @generated from protobuf field: google.protobuf.Timestamp occurred_at = 2
     */
    occurredAt?: Timestamp;
    /**
     * @generated from protobuf field: repeated string participants = 3
     */
    participants: string[];
}
/**
 * @generated from protobuf message nimi.runtime.v1.SemanticMemoryRecord
 */
export interface SemanticMemoryRecord {
    /**
     * @generated from protobuf field: string subject = 1
     */
    subject: string;
    /**
     * @generated from protobuf field: string predicate = 2
     */
    predicate: string;
    /**
     * @generated from protobuf field: string object = 3
     */
    object: string;
    /**
     * @generated from protobuf field: double confidence = 4
     */
    confidence: number;
}
/**
 * @generated from protobuf message nimi.runtime.v1.ObservationalMemoryRecord
 */
export interface ObservationalMemoryRecord {
    /**
     * @generated from protobuf field: string observation = 1
     */
    observation: string;
    /**
     * @generated from protobuf field: google.protobuf.Timestamp observed_at = 2
     */
    observedAt?: Timestamp;
    /**
     * @generated from protobuf field: string source_ref = 3
     */
    sourceRef: string;
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryRecordInput
 */
export interface MemoryRecordInput {
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryRecordKind kind = 1
     */
    kind: MemoryRecordKind;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryCanonicalClass canonical_class = 2
     */
    canonicalClass: MemoryCanonicalClass;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryProvenance provenance = 3
     */
    provenance?: MemoryProvenance;
    /**
     * @generated from protobuf field: google.protobuf.Struct metadata = 4
     */
    metadata?: Struct;
    /**
     * @generated from protobuf field: google.protobuf.Struct extensions = 5
     */
    extensions?: Struct;
    /**
     * @generated from protobuf oneof: payload
     */
    payload: {
        oneofKind: "episodic";
        /**
         * @generated from protobuf field: nimi.runtime.v1.EpisodicMemoryRecord episodic = 10
         */
        episodic: EpisodicMemoryRecord;
    } | {
        oneofKind: "semantic";
        /**
         * @generated from protobuf field: nimi.runtime.v1.SemanticMemoryRecord semantic = 11
         */
        semantic: SemanticMemoryRecord;
    } | {
        oneofKind: "observational";
        /**
         * @generated from protobuf field: nimi.runtime.v1.ObservationalMemoryRecord observational = 12
         */
        observational: ObservationalMemoryRecord;
    } | {
        oneofKind: undefined;
    };
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryReplicationPending
 */
export interface MemoryReplicationPending {
    /**
     * @generated from protobuf field: string basis_version = 1
     */
    basisVersion: string;
    /**
     * @generated from protobuf field: google.protobuf.Timestamp enqueued_at = 2
     */
    enqueuedAt?: Timestamp;
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryReplicationSynced
 */
export interface MemoryReplicationSynced {
    /**
     * @generated from protobuf field: string realm_version = 1
     */
    realmVersion: string;
    /**
     * @generated from protobuf field: google.protobuf.Timestamp synced_at = 2
     */
    syncedAt?: Timestamp;
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryReplicationConflict
 */
export interface MemoryReplicationConflict {
    /**
     * @generated from protobuf field: string conflict_id = 1
     */
    conflictId: string;
    /**
     * @generated from protobuf field: string local_version = 2
     */
    localVersion: string;
    /**
     * @generated from protobuf field: string remote_version = 3
     */
    remoteVersion: string;
    /**
     * @generated from protobuf field: string conflict_reason = 4
     */
    conflictReason: string;
    /**
     * @generated from protobuf field: google.protobuf.Timestamp detected_at = 5
     */
    detectedAt?: Timestamp;
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryInvalidation
 */
export interface MemoryInvalidation {
    /**
     * @generated from protobuf field: string invalidation_id = 1
     */
    invalidationId: string;
    /**
     * @generated from protobuf field: string invalidated_version = 2
     */
    invalidatedVersion: string;
    /**
     * @generated from protobuf field: string authority = 3
     */
    authority: string;
    /**
     * @generated from protobuf field: string invalidation_reason = 4
     */
    invalidationReason: string;
    /**
     * @generated from protobuf field: google.protobuf.Timestamp invalidated_at = 5
     */
    invalidatedAt?: Timestamp;
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryReplicationState
 */
export interface MemoryReplicationState {
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryReplicationOutcome outcome = 1
     */
    outcome: MemoryReplicationOutcome;
    /**
     * @generated from protobuf field: string local_version = 2
     */
    localVersion: string;
    /**
     * @generated from protobuf field: string basis_version = 3
     */
    basisVersion: string;
    /**
     * @generated from protobuf oneof: detail
     */
    detail: {
        oneofKind: "pending";
        /**
         * @generated from protobuf field: nimi.runtime.v1.MemoryReplicationPending pending = 10
         */
        pending: MemoryReplicationPending;
    } | {
        oneofKind: "synced";
        /**
         * @generated from protobuf field: nimi.runtime.v1.MemoryReplicationSynced synced = 11
         */
        synced: MemoryReplicationSynced;
    } | {
        oneofKind: "conflict";
        /**
         * @generated from protobuf field: nimi.runtime.v1.MemoryReplicationConflict conflict = 12
         */
        conflict: MemoryReplicationConflict;
    } | {
        oneofKind: "invalidation";
        /**
         * @generated from protobuf field: nimi.runtime.v1.MemoryInvalidation invalidation = 13
         */
        invalidation: MemoryInvalidation;
    } | {
        oneofKind: undefined;
    };
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryRecord
 */
export interface MemoryRecord {
    /**
     * @generated from protobuf field: string memory_id = 1
     */
    memoryId: string;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryBankLocator bank = 2
     */
    bank?: MemoryBankLocator;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryRecordKind kind = 3
     */
    kind: MemoryRecordKind;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryCanonicalClass canonical_class = 4
     */
    canonicalClass: MemoryCanonicalClass;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryProvenance provenance = 5
     */
    provenance?: MemoryProvenance;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryReplicationState replication = 6
     */
    replication?: MemoryReplicationState;
    /**
     * @generated from protobuf field: google.protobuf.Struct metadata = 7
     */
    metadata?: Struct;
    /**
     * @generated from protobuf field: google.protobuf.Struct extensions = 8
     */
    extensions?: Struct;
    /**
     * @generated from protobuf oneof: payload
     */
    payload: {
        oneofKind: "episodic";
        /**
         * @generated from protobuf field: nimi.runtime.v1.EpisodicMemoryRecord episodic = 10
         */
        episodic: EpisodicMemoryRecord;
    } | {
        oneofKind: "semantic";
        /**
         * @generated from protobuf field: nimi.runtime.v1.SemanticMemoryRecord semantic = 11
         */
        semantic: SemanticMemoryRecord;
    } | {
        oneofKind: "observational";
        /**
         * @generated from protobuf field: nimi.runtime.v1.ObservationalMemoryRecord observational = 12
         */
        observational: ObservationalMemoryRecord;
    } | {
        oneofKind: undefined;
    };
    /**
     * @generated from protobuf field: google.protobuf.Timestamp created_at = 20
     */
    createdAt?: Timestamp;
    /**
     * @generated from protobuf field: google.protobuf.Timestamp updated_at = 21
     */
    updatedAt?: Timestamp;
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryRecallQuery
 */
export interface MemoryRecallQuery {
    /**
     * @generated from protobuf field: string query = 1
     */
    query: string;
    /**
     * @generated from protobuf field: repeated nimi.runtime.v1.MemoryRecordKind kinds = 2
     */
    kinds: MemoryRecordKind[];
    /**
     * @generated from protobuf field: int32 limit = 3
     */
    limit: number;
    /**
     * @generated from protobuf field: google.protobuf.Timestamp start_time = 4
     */
    startTime?: Timestamp;
    /**
     * @generated from protobuf field: google.protobuf.Timestamp end_time = 5
     */
    endTime?: Timestamp;
    /**
     * @generated from protobuf field: repeated nimi.runtime.v1.MemoryCanonicalClass canonical_classes = 6
     */
    canonicalClasses: MemoryCanonicalClass[];
    /**
     * @generated from protobuf field: bool include_invalidated = 7
     */
    includeInvalidated: boolean;
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryHistoryQuery
 */
export interface MemoryHistoryQuery {
    /**
     * @generated from protobuf field: repeated nimi.runtime.v1.MemoryRecordKind kinds = 1
     */
    kinds: MemoryRecordKind[];
    /**
     * @generated from protobuf field: google.protobuf.Timestamp start_time = 2
     */
    startTime?: Timestamp;
    /**
     * @generated from protobuf field: google.protobuf.Timestamp end_time = 3
     */
    endTime?: Timestamp;
    /**
     * @generated from protobuf field: int32 page_size = 4
     */
    pageSize: number;
    /**
     * @generated from protobuf field: string page_token = 5
     */
    pageToken: string;
    /**
     * @generated from protobuf field: bool include_invalidated = 6
     */
    includeInvalidated: boolean;
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryRecallHit
 */
export interface MemoryRecallHit {
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryRecord record = 1
     */
    record?: MemoryRecord;
    /**
     * @generated from protobuf field: double relevance_score = 2
     */
    relevanceScore: number;
    /**
     * @generated from protobuf field: string match_reason = 3
     */
    matchReason: string;
}
/**
 * @generated from protobuf message nimi.runtime.v1.NarrativeRecallHit
 */
export interface NarrativeRecallHit {
    /**
     * @generated from protobuf field: string narrative_id = 1
     */
    narrativeId: string;
    /**
     * @generated from protobuf field: string topic = 2
     */
    topic: string;
    /**
     * @generated from protobuf field: string content = 3
     */
    content: string;
    /**
     * @generated from protobuf field: repeated string source_memory_ids = 4
     */
    sourceMemoryIds: string[];
    /**
     * @generated from protobuf field: bool is_stale = 5
     */
    isStale: boolean;
    /**
     * @generated from protobuf field: double relevance_score = 6
     */
    relevanceScore: number;
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryReflectionRequest
 */
export interface MemoryReflectionRequest {
    /**
     * @generated from protobuf field: repeated nimi.runtime.v1.MemoryRecordKind source_kinds = 1
     */
    sourceKinds: MemoryRecordKind[];
    /**
     * @generated from protobuf field: google.protobuf.Timestamp start_time = 2
     */
    startTime?: Timestamp;
    /**
     * @generated from protobuf field: google.protobuf.Timestamp end_time = 3
     */
    endTime?: Timestamp;
    /**
     * @generated from protobuf field: int32 target_record_count = 4
     */
    targetRecordCount: number;
    /**
     * @generated from protobuf field: string reflection_reason = 5
     */
    reflectionReason: string;
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryReflectionResult
 */
export interface MemoryReflectionResult {
    /**
     * @generated from protobuf field: repeated nimi.runtime.v1.MemoryRecord created_records = 1
     */
    createdRecords: MemoryRecord[];
    /**
     * @generated from protobuf field: int32 source_record_count = 2
     */
    sourceRecordCount: number;
    /**
     * @generated from protobuf field: google.protobuf.Timestamp completed_at = 3
     */
    completedAt?: Timestamp;
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryDeletedDetail
 */
export interface MemoryDeletedDetail {
    /**
     * @generated from protobuf field: repeated string memory_ids = 1
     */
    memoryIds: string[];
    /**
     * @generated from protobuf field: string reason = 2
     */
    reason: string;
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryReplicationObservedDetail
 */
export interface MemoryReplicationObservedDetail {
    /**
     * @generated from protobuf field: string memory_id = 1
     */
    memoryId: string;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryReplicationState replication = 2
     */
    replication?: MemoryReplicationState;
}
/**
 * @generated from protobuf message nimi.runtime.v1.MemoryEvent
 */
export interface MemoryEvent {
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryEventType event_type = 1
     */
    eventType: MemoryEventType;
    /**
     * @generated from protobuf field: uint64 sequence = 2
     */
    sequence: string;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryBankLocator bank = 3
     */
    bank?: MemoryBankLocator;
    /**
     * @generated from protobuf field: google.protobuf.Timestamp timestamp = 4
     */
    timestamp?: Timestamp;
    /**
     * @generated from protobuf oneof: detail
     */
    detail: {
        oneofKind: "bankCreated";
        /**
         * @generated from protobuf field: nimi.runtime.v1.MemoryBank bank_created = 10
         */
        bankCreated: MemoryBank;
    } | {
        oneofKind: "bankDeleted";
        /**
         * @generated from protobuf field: nimi.runtime.v1.MemoryBank bank_deleted = 11
         */
        bankDeleted: MemoryBank;
    } | {
        oneofKind: "recordRetained";
        /**
         * @generated from protobuf field: nimi.runtime.v1.MemoryRecord record_retained = 12
         */
        recordRetained: MemoryRecord;
    } | {
        oneofKind: "recordDeleted";
        /**
         * @generated from protobuf field: nimi.runtime.v1.MemoryDeletedDetail record_deleted = 13
         */
        recordDeleted: MemoryDeletedDetail;
    } | {
        oneofKind: "reflectionCompleted";
        /**
         * @generated from protobuf field: nimi.runtime.v1.MemoryReflectionResult reflection_completed = 14
         */
        reflectionCompleted: MemoryReflectionResult;
    } | {
        oneofKind: "replicationUpdated";
        /**
         * @generated from protobuf field: nimi.runtime.v1.MemoryReplicationObservedDetail replication_updated = 15
         */
        replicationUpdated: MemoryReplicationObservedDetail;
    } | {
        oneofKind: undefined;
    };
}
/**
 * @generated from protobuf message nimi.runtime.v1.CreateBankRequest
 */
export interface CreateBankRequest {
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryRequestContext context = 1
     */
    context?: MemoryRequestContext;
    /**
     * @generated from protobuf field: nimi.runtime.v1.PublicMemoryBankLocator locator = 2
     */
    locator?: PublicMemoryBankLocator;
    /**
     * Optional. When omitted, the bank remains valid with no bound embedding profile.
     *
     * @generated from protobuf field: nimi.runtime.v1.MemoryEmbeddingProfile embedding_profile = 3
     */
    embeddingProfile?: MemoryEmbeddingProfile;
    /**
     * @generated from protobuf field: string display_name = 4
     */
    displayName: string;
    /**
     * @generated from protobuf field: google.protobuf.Struct metadata = 5
     */
    metadata?: Struct;
}
/**
 * @generated from protobuf message nimi.runtime.v1.CreateBankResponse
 */
export interface CreateBankResponse {
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryBank bank = 1
     */
    bank?: MemoryBank;
}
/**
 * @generated from protobuf message nimi.runtime.v1.GetBankRequest
 */
export interface GetBankRequest {
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryRequestContext context = 1
     */
    context?: MemoryRequestContext;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryBankLocator locator = 2
     */
    locator?: MemoryBankLocator;
}
/**
 * @generated from protobuf message nimi.runtime.v1.GetBankResponse
 */
export interface GetBankResponse {
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryBank bank = 1
     */
    bank?: MemoryBank;
}
/**
 * @generated from protobuf message nimi.runtime.v1.ListBanksRequest
 */
export interface ListBanksRequest {
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryRequestContext context = 1
     */
    context?: MemoryRequestContext;
    /**
     * @generated from protobuf field: repeated nimi.runtime.v1.MemoryBankScope scope_filters = 2
     */
    scopeFilters: MemoryBankScope[];
    /**
     * @generated from protobuf field: repeated nimi.runtime.v1.MemoryBankOwnerFilter owner_filters = 3
     */
    ownerFilters: MemoryBankOwnerFilter[];
    /**
     * @generated from protobuf field: int32 page_size = 4
     */
    pageSize: number;
    /**
     * @generated from protobuf field: string page_token = 5
     */
    pageToken: string;
}
/**
 * @generated from protobuf message nimi.runtime.v1.ListBanksResponse
 */
export interface ListBanksResponse {
    /**
     * @generated from protobuf field: repeated nimi.runtime.v1.MemoryBank banks = 1
     */
    banks: MemoryBank[];
    /**
     * @generated from protobuf field: string next_page_token = 2
     */
    nextPageToken: string;
}
/**
 * @generated from protobuf message nimi.runtime.v1.DeleteBankRequest
 */
export interface DeleteBankRequest {
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryRequestContext context = 1
     */
    context?: MemoryRequestContext;
    /**
     * @generated from protobuf field: nimi.runtime.v1.PublicMemoryBankLocator locator = 2
     */
    locator?: PublicMemoryBankLocator;
}
/**
 * @generated from protobuf message nimi.runtime.v1.DeleteBankResponse
 */
export interface DeleteBankResponse {
    /**
     * @generated from protobuf field: nimi.runtime.v1.Ack ack = 1
     */
    ack?: Ack;
}
/**
 * @generated from protobuf message nimi.runtime.v1.RetainRequest
 */
export interface RetainRequest {
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryRequestContext context = 1
     */
    context?: MemoryRequestContext;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryBankLocator bank = 2
     */
    bank?: MemoryBankLocator;
    /**
     * @generated from protobuf field: repeated nimi.runtime.v1.MemoryRecordInput records = 3
     */
    records: MemoryRecordInput[];
}
/**
 * @generated from protobuf message nimi.runtime.v1.RetainResponse
 */
export interface RetainResponse {
    /**
     * @generated from protobuf field: repeated nimi.runtime.v1.MemoryRecord records = 1
     */
    records: MemoryRecord[];
}
/**
 * @generated from protobuf message nimi.runtime.v1.RecallRequest
 */
export interface RecallRequest {
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryRequestContext context = 1
     */
    context?: MemoryRequestContext;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryBankLocator bank = 2
     */
    bank?: MemoryBankLocator;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryRecallQuery query = 3
     */
    query?: MemoryRecallQuery;
}
/**
 * @generated from protobuf message nimi.runtime.v1.RecallResponse
 */
export interface RecallResponse {
    /**
     * @generated from protobuf field: repeated nimi.runtime.v1.MemoryRecallHit hits = 1
     */
    hits: MemoryRecallHit[];
    /**
     * @generated from protobuf field: repeated nimi.runtime.v1.NarrativeRecallHit narrative_hits = 2
     */
    narrativeHits: NarrativeRecallHit[];
}
/**
 * @generated from protobuf message nimi.runtime.v1.HistoryRequest
 */
export interface HistoryRequest {
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryRequestContext context = 1
     */
    context?: MemoryRequestContext;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryBankLocator bank = 2
     */
    bank?: MemoryBankLocator;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryHistoryQuery query = 3
     */
    query?: MemoryHistoryQuery;
}
/**
 * @generated from protobuf message nimi.runtime.v1.HistoryResponse
 */
export interface HistoryResponse {
    /**
     * @generated from protobuf field: repeated nimi.runtime.v1.MemoryRecord records = 1
     */
    records: MemoryRecord[];
    /**
     * @generated from protobuf field: string next_page_token = 2
     */
    nextPageToken: string;
}
/**
 * @generated from protobuf message nimi.runtime.v1.DeleteMemoryRequest
 */
export interface DeleteMemoryRequest {
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryRequestContext context = 1
     */
    context?: MemoryRequestContext;
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryBankLocator bank = 2
     */
    bank?: MemoryBankLocator;
    /**
     * @generated from protobuf field: repeated string memory_ids = 3
     */
    memoryIds: string[];
    /**
     * @generated from protobuf field: string reason = 4
     */
    reason: string;
}
/**
 * @generated from protobuf message nimi.runtime.v1.DeleteMemoryResponse
 */
export interface DeleteMemoryResponse {
    /**
     * @generated from protobuf field: nimi.runtime.v1.Ack ack = 1
     */
    ack?: Ack;
    /**
     * @generated from protobuf field: repeated string deleted_memory_ids = 2
     */
    deletedMemoryIds: string[];
}
/**
 * @generated from protobuf message nimi.runtime.v1.SubscribeMemoryEventsRequest
 */
export interface SubscribeMemoryEventsRequest {
    /**
     * @generated from protobuf field: nimi.runtime.v1.MemoryRequestContext context = 1
     */
    context?: MemoryRequestContext;
    /**
     * @generated from protobuf field: repeated nimi.runtime.v1.MemoryBankScope scope_filters = 2
     */
    scopeFilters: MemoryBankScope[];
    /**
     * @generated from protobuf field: repeated nimi.runtime.v1.MemoryBankOwnerFilter owner_filters = 3
     */
    ownerFilters: MemoryBankOwnerFilter[];
    /**
     * @generated from protobuf field: string cursor = 4
     */
    cursor: string;
}
/**
 * @generated from protobuf enum nimi.runtime.v1.MemoryBankScope
 */
export declare enum MemoryBankScope {
    /**
     * @generated from protobuf enum value: MEMORY_BANK_SCOPE_UNSPECIFIED = 0;
     */
    UNSPECIFIED = 0,
    /**
     * @generated from protobuf enum value: MEMORY_BANK_SCOPE_AGENT_CORE = 1;
     */
    AGENT_CORE = 1,
    /**
     * @generated from protobuf enum value: MEMORY_BANK_SCOPE_AGENT_DYADIC = 2;
     */
    AGENT_DYADIC = 2,
    /**
     * @generated from protobuf enum value: MEMORY_BANK_SCOPE_WORLD_SHARED = 3;
     */
    WORLD_SHARED = 3,
    /**
     * @generated from protobuf enum value: MEMORY_BANK_SCOPE_APP_PRIVATE = 4;
     */
    APP_PRIVATE = 4,
    /**
     * @generated from protobuf enum value: MEMORY_BANK_SCOPE_WORKSPACE_PRIVATE = 5;
     */
    WORKSPACE_PRIVATE = 5
}
/**
 * @generated from protobuf enum nimi.runtime.v1.MemoryRecordKind
 */
export declare enum MemoryRecordKind {
    /**
     * @generated from protobuf enum value: MEMORY_RECORD_KIND_UNSPECIFIED = 0;
     */
    UNSPECIFIED = 0,
    /**
     * @generated from protobuf enum value: MEMORY_RECORD_KIND_EPISODIC = 1;
     */
    EPISODIC = 1,
    /**
     * @generated from protobuf enum value: MEMORY_RECORD_KIND_SEMANTIC = 2;
     */
    SEMANTIC = 2,
    /**
     * @generated from protobuf enum value: MEMORY_RECORD_KIND_OBSERVATIONAL = 3;
     */
    OBSERVATIONAL = 3
}
/**
 * @generated from protobuf enum nimi.runtime.v1.MemoryCanonicalClass
 */
export declare enum MemoryCanonicalClass {
    /**
     * @generated from protobuf enum value: MEMORY_CANONICAL_CLASS_UNSPECIFIED = 0;
     */
    UNSPECIFIED = 0,
    /**
     * @generated from protobuf enum value: MEMORY_CANONICAL_CLASS_NONE = 1;
     */
    NONE = 1,
    /**
     * @generated from protobuf enum value: MEMORY_CANONICAL_CLASS_PUBLIC_SHARED = 2;
     */
    PUBLIC_SHARED = 2,
    /**
     * @generated from protobuf enum value: MEMORY_CANONICAL_CLASS_WORLD_SHARED = 3;
     */
    WORLD_SHARED = 3,
    /**
     * @generated from protobuf enum value: MEMORY_CANONICAL_CLASS_DYADIC = 4;
     */
    DYADIC = 4
}
/**
 * @generated from protobuf enum nimi.runtime.v1.MemoryDistanceMetric
 */
export declare enum MemoryDistanceMetric {
    /**
     * @generated from protobuf enum value: MEMORY_DISTANCE_METRIC_UNSPECIFIED = 0;
     */
    UNSPECIFIED = 0,
    /**
     * @generated from protobuf enum value: MEMORY_DISTANCE_METRIC_COSINE = 1;
     */
    COSINE = 1,
    /**
     * @generated from protobuf enum value: MEMORY_DISTANCE_METRIC_EUCLIDEAN = 2;
     */
    EUCLIDEAN = 2
}
/**
 * @generated from protobuf enum nimi.runtime.v1.MemoryMigrationPolicy
 */
export declare enum MemoryMigrationPolicy {
    /**
     * @generated from protobuf enum value: MEMORY_MIGRATION_POLICY_UNSPECIFIED = 0;
     */
    UNSPECIFIED = 0,
    /**
     * @generated from protobuf enum value: MEMORY_MIGRATION_POLICY_REINDEX = 1;
     */
    REINDEX = 1,
    /**
     * @generated from protobuf enum value: MEMORY_MIGRATION_POLICY_FREEZE = 2;
     */
    FREEZE = 2
}
/**
 * @generated from protobuf enum nimi.runtime.v1.MemoryReplicationOutcome
 */
export declare enum MemoryReplicationOutcome {
    /**
     * @generated from protobuf enum value: MEMORY_REPLICATION_OUTCOME_UNSPECIFIED = 0;
     */
    UNSPECIFIED = 0,
    /**
     * @generated from protobuf enum value: MEMORY_REPLICATION_OUTCOME_PENDING = 1;
     */
    PENDING = 1,
    /**
     * @generated from protobuf enum value: MEMORY_REPLICATION_OUTCOME_SYNCED = 2;
     */
    SYNCED = 2,
    /**
     * @generated from protobuf enum value: MEMORY_REPLICATION_OUTCOME_CONFLICT = 3;
     */
    CONFLICT = 3,
    /**
     * @generated from protobuf enum value: MEMORY_REPLICATION_OUTCOME_INVALIDATED = 4;
     */
    INVALIDATED = 4
}
/**
 * @generated from protobuf enum nimi.runtime.v1.MemoryEventType
 */
export declare enum MemoryEventType {
    /**
     * @generated from protobuf enum value: MEMORY_EVENT_TYPE_UNSPECIFIED = 0;
     */
    UNSPECIFIED = 0,
    /**
     * @generated from protobuf enum value: MEMORY_EVENT_TYPE_BANK_CREATED = 1;
     */
    BANK_CREATED = 1,
    /**
     * @generated from protobuf enum value: MEMORY_EVENT_TYPE_BANK_DELETED = 2;
     */
    BANK_DELETED = 2,
    /**
     * @generated from protobuf enum value: MEMORY_EVENT_TYPE_RECORD_RETAINED = 3;
     */
    RECORD_RETAINED = 3,
    /**
     * @generated from protobuf enum value: MEMORY_EVENT_TYPE_RECORD_DELETED = 4;
     */
    RECORD_DELETED = 4,
    /**
     * @generated from protobuf enum value: MEMORY_EVENT_TYPE_REFLECTION_COMPLETED = 5;
     */
    REFLECTION_COMPLETED = 5,
    /**
     * @generated from protobuf enum value: MEMORY_EVENT_TYPE_REPLICATION_UPDATED = 6;
     */
    REPLICATION_UPDATED = 6
}
declare class MemoryRequestContext$Type extends MessageType<MemoryRequestContext> {
    constructor();
    create(value?: PartialMessage<MemoryRequestContext>): MemoryRequestContext;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryRequestContext): MemoryRequestContext;
    internalBinaryWrite(message: MemoryRequestContext, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryRequestContext
 */
export declare const MemoryRequestContext: MemoryRequestContext$Type;
declare class AgentCoreBankOwner$Type extends MessageType<AgentCoreBankOwner> {
    constructor();
    create(value?: PartialMessage<AgentCoreBankOwner>): AgentCoreBankOwner;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AgentCoreBankOwner): AgentCoreBankOwner;
    internalBinaryWrite(message: AgentCoreBankOwner, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.AgentCoreBankOwner
 */
export declare const AgentCoreBankOwner: AgentCoreBankOwner$Type;
declare class AgentDyadicBankOwner$Type extends MessageType<AgentDyadicBankOwner> {
    constructor();
    create(value?: PartialMessage<AgentDyadicBankOwner>): AgentDyadicBankOwner;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AgentDyadicBankOwner): AgentDyadicBankOwner;
    internalBinaryWrite(message: AgentDyadicBankOwner, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.AgentDyadicBankOwner
 */
export declare const AgentDyadicBankOwner: AgentDyadicBankOwner$Type;
declare class WorldSharedBankOwner$Type extends MessageType<WorldSharedBankOwner> {
    constructor();
    create(value?: PartialMessage<WorldSharedBankOwner>): WorldSharedBankOwner;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: WorldSharedBankOwner): WorldSharedBankOwner;
    internalBinaryWrite(message: WorldSharedBankOwner, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.WorldSharedBankOwner
 */
export declare const WorldSharedBankOwner: WorldSharedBankOwner$Type;
declare class AppPrivateBankOwner$Type extends MessageType<AppPrivateBankOwner> {
    constructor();
    create(value?: PartialMessage<AppPrivateBankOwner>): AppPrivateBankOwner;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AppPrivateBankOwner): AppPrivateBankOwner;
    internalBinaryWrite(message: AppPrivateBankOwner, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.AppPrivateBankOwner
 */
export declare const AppPrivateBankOwner: AppPrivateBankOwner$Type;
declare class WorkspacePrivateBankOwner$Type extends MessageType<WorkspacePrivateBankOwner> {
    constructor();
    create(value?: PartialMessage<WorkspacePrivateBankOwner>): WorkspacePrivateBankOwner;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: WorkspacePrivateBankOwner): WorkspacePrivateBankOwner;
    internalBinaryWrite(message: WorkspacePrivateBankOwner, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.WorkspacePrivateBankOwner
 */
export declare const WorkspacePrivateBankOwner: WorkspacePrivateBankOwner$Type;
declare class MemoryBankLocator$Type extends MessageType<MemoryBankLocator> {
    constructor();
    create(value?: PartialMessage<MemoryBankLocator>): MemoryBankLocator;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryBankLocator): MemoryBankLocator;
    internalBinaryWrite(message: MemoryBankLocator, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryBankLocator
 */
export declare const MemoryBankLocator: MemoryBankLocator$Type;
declare class PublicMemoryBankLocator$Type extends MessageType<PublicMemoryBankLocator> {
    constructor();
    create(value?: PartialMessage<PublicMemoryBankLocator>): PublicMemoryBankLocator;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PublicMemoryBankLocator): PublicMemoryBankLocator;
    internalBinaryWrite(message: PublicMemoryBankLocator, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.PublicMemoryBankLocator
 */
export declare const PublicMemoryBankLocator: PublicMemoryBankLocator$Type;
declare class MemoryBankOwnerFilter$Type extends MessageType<MemoryBankOwnerFilter> {
    constructor();
    create(value?: PartialMessage<MemoryBankOwnerFilter>): MemoryBankOwnerFilter;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryBankOwnerFilter): MemoryBankOwnerFilter;
    internalBinaryWrite(message: MemoryBankOwnerFilter, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryBankOwnerFilter
 */
export declare const MemoryBankOwnerFilter: MemoryBankOwnerFilter$Type;
declare class MemoryEmbeddingProfile$Type extends MessageType<MemoryEmbeddingProfile> {
    constructor();
    create(value?: PartialMessage<MemoryEmbeddingProfile>): MemoryEmbeddingProfile;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryEmbeddingProfile): MemoryEmbeddingProfile;
    internalBinaryWrite(message: MemoryEmbeddingProfile, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryEmbeddingProfile
 */
export declare const MemoryEmbeddingProfile: MemoryEmbeddingProfile$Type;
declare class MemoryBank$Type extends MessageType<MemoryBank> {
    constructor();
    create(value?: PartialMessage<MemoryBank>): MemoryBank;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryBank): MemoryBank;
    internalBinaryWrite(message: MemoryBank, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryBank
 */
export declare const MemoryBank: MemoryBank$Type;
declare class MemoryProvenance$Type extends MessageType<MemoryProvenance> {
    constructor();
    create(value?: PartialMessage<MemoryProvenance>): MemoryProvenance;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryProvenance): MemoryProvenance;
    internalBinaryWrite(message: MemoryProvenance, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryProvenance
 */
export declare const MemoryProvenance: MemoryProvenance$Type;
declare class EpisodicMemoryRecord$Type extends MessageType<EpisodicMemoryRecord> {
    constructor();
    create(value?: PartialMessage<EpisodicMemoryRecord>): EpisodicMemoryRecord;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: EpisodicMemoryRecord): EpisodicMemoryRecord;
    internalBinaryWrite(message: EpisodicMemoryRecord, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.EpisodicMemoryRecord
 */
export declare const EpisodicMemoryRecord: EpisodicMemoryRecord$Type;
declare class SemanticMemoryRecord$Type extends MessageType<SemanticMemoryRecord> {
    constructor();
    create(value?: PartialMessage<SemanticMemoryRecord>): SemanticMemoryRecord;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SemanticMemoryRecord): SemanticMemoryRecord;
    internalBinaryWrite(message: SemanticMemoryRecord, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.SemanticMemoryRecord
 */
export declare const SemanticMemoryRecord: SemanticMemoryRecord$Type;
declare class ObservationalMemoryRecord$Type extends MessageType<ObservationalMemoryRecord> {
    constructor();
    create(value?: PartialMessage<ObservationalMemoryRecord>): ObservationalMemoryRecord;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ObservationalMemoryRecord): ObservationalMemoryRecord;
    internalBinaryWrite(message: ObservationalMemoryRecord, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.ObservationalMemoryRecord
 */
export declare const ObservationalMemoryRecord: ObservationalMemoryRecord$Type;
declare class MemoryRecordInput$Type extends MessageType<MemoryRecordInput> {
    constructor();
    create(value?: PartialMessage<MemoryRecordInput>): MemoryRecordInput;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryRecordInput): MemoryRecordInput;
    internalBinaryWrite(message: MemoryRecordInput, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryRecordInput
 */
export declare const MemoryRecordInput: MemoryRecordInput$Type;
declare class MemoryReplicationPending$Type extends MessageType<MemoryReplicationPending> {
    constructor();
    create(value?: PartialMessage<MemoryReplicationPending>): MemoryReplicationPending;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryReplicationPending): MemoryReplicationPending;
    internalBinaryWrite(message: MemoryReplicationPending, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryReplicationPending
 */
export declare const MemoryReplicationPending: MemoryReplicationPending$Type;
declare class MemoryReplicationSynced$Type extends MessageType<MemoryReplicationSynced> {
    constructor();
    create(value?: PartialMessage<MemoryReplicationSynced>): MemoryReplicationSynced;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryReplicationSynced): MemoryReplicationSynced;
    internalBinaryWrite(message: MemoryReplicationSynced, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryReplicationSynced
 */
export declare const MemoryReplicationSynced: MemoryReplicationSynced$Type;
declare class MemoryReplicationConflict$Type extends MessageType<MemoryReplicationConflict> {
    constructor();
    create(value?: PartialMessage<MemoryReplicationConflict>): MemoryReplicationConflict;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryReplicationConflict): MemoryReplicationConflict;
    internalBinaryWrite(message: MemoryReplicationConflict, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryReplicationConflict
 */
export declare const MemoryReplicationConflict: MemoryReplicationConflict$Type;
declare class MemoryInvalidation$Type extends MessageType<MemoryInvalidation> {
    constructor();
    create(value?: PartialMessage<MemoryInvalidation>): MemoryInvalidation;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryInvalidation): MemoryInvalidation;
    internalBinaryWrite(message: MemoryInvalidation, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryInvalidation
 */
export declare const MemoryInvalidation: MemoryInvalidation$Type;
declare class MemoryReplicationState$Type extends MessageType<MemoryReplicationState> {
    constructor();
    create(value?: PartialMessage<MemoryReplicationState>): MemoryReplicationState;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryReplicationState): MemoryReplicationState;
    internalBinaryWrite(message: MemoryReplicationState, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryReplicationState
 */
export declare const MemoryReplicationState: MemoryReplicationState$Type;
declare class MemoryRecord$Type extends MessageType<MemoryRecord> {
    constructor();
    create(value?: PartialMessage<MemoryRecord>): MemoryRecord;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryRecord): MemoryRecord;
    internalBinaryWrite(message: MemoryRecord, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryRecord
 */
export declare const MemoryRecord: MemoryRecord$Type;
declare class MemoryRecallQuery$Type extends MessageType<MemoryRecallQuery> {
    constructor();
    create(value?: PartialMessage<MemoryRecallQuery>): MemoryRecallQuery;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryRecallQuery): MemoryRecallQuery;
    internalBinaryWrite(message: MemoryRecallQuery, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryRecallQuery
 */
export declare const MemoryRecallQuery: MemoryRecallQuery$Type;
declare class MemoryHistoryQuery$Type extends MessageType<MemoryHistoryQuery> {
    constructor();
    create(value?: PartialMessage<MemoryHistoryQuery>): MemoryHistoryQuery;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryHistoryQuery): MemoryHistoryQuery;
    internalBinaryWrite(message: MemoryHistoryQuery, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryHistoryQuery
 */
export declare const MemoryHistoryQuery: MemoryHistoryQuery$Type;
declare class MemoryRecallHit$Type extends MessageType<MemoryRecallHit> {
    constructor();
    create(value?: PartialMessage<MemoryRecallHit>): MemoryRecallHit;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryRecallHit): MemoryRecallHit;
    internalBinaryWrite(message: MemoryRecallHit, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryRecallHit
 */
export declare const MemoryRecallHit: MemoryRecallHit$Type;
declare class NarrativeRecallHit$Type extends MessageType<NarrativeRecallHit> {
    constructor();
    create(value?: PartialMessage<NarrativeRecallHit>): NarrativeRecallHit;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NarrativeRecallHit): NarrativeRecallHit;
    internalBinaryWrite(message: NarrativeRecallHit, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.NarrativeRecallHit
 */
export declare const NarrativeRecallHit: NarrativeRecallHit$Type;
declare class MemoryReflectionRequest$Type extends MessageType<MemoryReflectionRequest> {
    constructor();
    create(value?: PartialMessage<MemoryReflectionRequest>): MemoryReflectionRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryReflectionRequest): MemoryReflectionRequest;
    internalBinaryWrite(message: MemoryReflectionRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryReflectionRequest
 */
export declare const MemoryReflectionRequest: MemoryReflectionRequest$Type;
declare class MemoryReflectionResult$Type extends MessageType<MemoryReflectionResult> {
    constructor();
    create(value?: PartialMessage<MemoryReflectionResult>): MemoryReflectionResult;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryReflectionResult): MemoryReflectionResult;
    internalBinaryWrite(message: MemoryReflectionResult, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryReflectionResult
 */
export declare const MemoryReflectionResult: MemoryReflectionResult$Type;
declare class MemoryDeletedDetail$Type extends MessageType<MemoryDeletedDetail> {
    constructor();
    create(value?: PartialMessage<MemoryDeletedDetail>): MemoryDeletedDetail;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryDeletedDetail): MemoryDeletedDetail;
    internalBinaryWrite(message: MemoryDeletedDetail, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryDeletedDetail
 */
export declare const MemoryDeletedDetail: MemoryDeletedDetail$Type;
declare class MemoryReplicationObservedDetail$Type extends MessageType<MemoryReplicationObservedDetail> {
    constructor();
    create(value?: PartialMessage<MemoryReplicationObservedDetail>): MemoryReplicationObservedDetail;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryReplicationObservedDetail): MemoryReplicationObservedDetail;
    internalBinaryWrite(message: MemoryReplicationObservedDetail, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryReplicationObservedDetail
 */
export declare const MemoryReplicationObservedDetail: MemoryReplicationObservedDetail$Type;
declare class MemoryEvent$Type extends MessageType<MemoryEvent> {
    constructor();
    create(value?: PartialMessage<MemoryEvent>): MemoryEvent;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MemoryEvent): MemoryEvent;
    internalBinaryWrite(message: MemoryEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.MemoryEvent
 */
export declare const MemoryEvent: MemoryEvent$Type;
declare class CreateBankRequest$Type extends MessageType<CreateBankRequest> {
    constructor();
    create(value?: PartialMessage<CreateBankRequest>): CreateBankRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CreateBankRequest): CreateBankRequest;
    internalBinaryWrite(message: CreateBankRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.CreateBankRequest
 */
export declare const CreateBankRequest: CreateBankRequest$Type;
declare class CreateBankResponse$Type extends MessageType<CreateBankResponse> {
    constructor();
    create(value?: PartialMessage<CreateBankResponse>): CreateBankResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CreateBankResponse): CreateBankResponse;
    internalBinaryWrite(message: CreateBankResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.CreateBankResponse
 */
export declare const CreateBankResponse: CreateBankResponse$Type;
declare class GetBankRequest$Type extends MessageType<GetBankRequest> {
    constructor();
    create(value?: PartialMessage<GetBankRequest>): GetBankRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetBankRequest): GetBankRequest;
    internalBinaryWrite(message: GetBankRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.GetBankRequest
 */
export declare const GetBankRequest: GetBankRequest$Type;
declare class GetBankResponse$Type extends MessageType<GetBankResponse> {
    constructor();
    create(value?: PartialMessage<GetBankResponse>): GetBankResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetBankResponse): GetBankResponse;
    internalBinaryWrite(message: GetBankResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.GetBankResponse
 */
export declare const GetBankResponse: GetBankResponse$Type;
declare class ListBanksRequest$Type extends MessageType<ListBanksRequest> {
    constructor();
    create(value?: PartialMessage<ListBanksRequest>): ListBanksRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListBanksRequest): ListBanksRequest;
    internalBinaryWrite(message: ListBanksRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.ListBanksRequest
 */
export declare const ListBanksRequest: ListBanksRequest$Type;
declare class ListBanksResponse$Type extends MessageType<ListBanksResponse> {
    constructor();
    create(value?: PartialMessage<ListBanksResponse>): ListBanksResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListBanksResponse): ListBanksResponse;
    internalBinaryWrite(message: ListBanksResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.ListBanksResponse
 */
export declare const ListBanksResponse: ListBanksResponse$Type;
declare class DeleteBankRequest$Type extends MessageType<DeleteBankRequest> {
    constructor();
    create(value?: PartialMessage<DeleteBankRequest>): DeleteBankRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeleteBankRequest): DeleteBankRequest;
    internalBinaryWrite(message: DeleteBankRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.DeleteBankRequest
 */
export declare const DeleteBankRequest: DeleteBankRequest$Type;
declare class DeleteBankResponse$Type extends MessageType<DeleteBankResponse> {
    constructor();
    create(value?: PartialMessage<DeleteBankResponse>): DeleteBankResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeleteBankResponse): DeleteBankResponse;
    internalBinaryWrite(message: DeleteBankResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.DeleteBankResponse
 */
export declare const DeleteBankResponse: DeleteBankResponse$Type;
declare class RetainRequest$Type extends MessageType<RetainRequest> {
    constructor();
    create(value?: PartialMessage<RetainRequest>): RetainRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RetainRequest): RetainRequest;
    internalBinaryWrite(message: RetainRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.RetainRequest
 */
export declare const RetainRequest: RetainRequest$Type;
declare class RetainResponse$Type extends MessageType<RetainResponse> {
    constructor();
    create(value?: PartialMessage<RetainResponse>): RetainResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RetainResponse): RetainResponse;
    internalBinaryWrite(message: RetainResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.RetainResponse
 */
export declare const RetainResponse: RetainResponse$Type;
declare class RecallRequest$Type extends MessageType<RecallRequest> {
    constructor();
    create(value?: PartialMessage<RecallRequest>): RecallRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RecallRequest): RecallRequest;
    internalBinaryWrite(message: RecallRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.RecallRequest
 */
export declare const RecallRequest: RecallRequest$Type;
declare class RecallResponse$Type extends MessageType<RecallResponse> {
    constructor();
    create(value?: PartialMessage<RecallResponse>): RecallResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RecallResponse): RecallResponse;
    internalBinaryWrite(message: RecallResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.RecallResponse
 */
export declare const RecallResponse: RecallResponse$Type;
declare class HistoryRequest$Type extends MessageType<HistoryRequest> {
    constructor();
    create(value?: PartialMessage<HistoryRequest>): HistoryRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: HistoryRequest): HistoryRequest;
    internalBinaryWrite(message: HistoryRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.HistoryRequest
 */
export declare const HistoryRequest: HistoryRequest$Type;
declare class HistoryResponse$Type extends MessageType<HistoryResponse> {
    constructor();
    create(value?: PartialMessage<HistoryResponse>): HistoryResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: HistoryResponse): HistoryResponse;
    internalBinaryWrite(message: HistoryResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.HistoryResponse
 */
export declare const HistoryResponse: HistoryResponse$Type;
declare class DeleteMemoryRequest$Type extends MessageType<DeleteMemoryRequest> {
    constructor();
    create(value?: PartialMessage<DeleteMemoryRequest>): DeleteMemoryRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeleteMemoryRequest): DeleteMemoryRequest;
    internalBinaryWrite(message: DeleteMemoryRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.DeleteMemoryRequest
 */
export declare const DeleteMemoryRequest: DeleteMemoryRequest$Type;
declare class DeleteMemoryResponse$Type extends MessageType<DeleteMemoryResponse> {
    constructor();
    create(value?: PartialMessage<DeleteMemoryResponse>): DeleteMemoryResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeleteMemoryResponse): DeleteMemoryResponse;
    internalBinaryWrite(message: DeleteMemoryResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.DeleteMemoryResponse
 */
export declare const DeleteMemoryResponse: DeleteMemoryResponse$Type;
declare class SubscribeMemoryEventsRequest$Type extends MessageType<SubscribeMemoryEventsRequest> {
    constructor();
    create(value?: PartialMessage<SubscribeMemoryEventsRequest>): SubscribeMemoryEventsRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SubscribeMemoryEventsRequest): SubscribeMemoryEventsRequest;
    internalBinaryWrite(message: SubscribeMemoryEventsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message nimi.runtime.v1.SubscribeMemoryEventsRequest
 */
export declare const SubscribeMemoryEventsRequest: SubscribeMemoryEventsRequest$Type;
export {};
//# sourceMappingURL=memory.d.ts.map