import { z } from "zod/v3";
declare const ownershipSchema: z.ZodObject<{
    version: z.ZodLiteral<1>;
    ownerId: z.ZodString;
    identity: z.ZodString;
    projectPath: z.ZodEffects<z.ZodString, string, string>;
    project: z.ZodObject<{
        path: z.ZodEffects<z.ZodString, string, string>;
        device: z.ZodString;
        inode: z.ZodString;
        created: z.ZodString;
    }, "strict", z.ZodTypeAny, {
        path: string;
        device: string;
        inode: string;
        created: string;
    }, {
        path: string;
        device: string;
        inode: string;
        created: string;
    }>;
    repository: z.ZodObject<{
        path: z.ZodEffects<z.ZodString, string, string>;
        device: z.ZodString;
        inode: z.ZodString;
        created: z.ZodString;
    }, "strict", z.ZodTypeAny, {
        path: string;
        device: string;
        inode: string;
        created: string;
    }, {
        path: string;
        device: string;
        inode: string;
        created: string;
    }>;
    commonGitDir: z.ZodObject<{
        path: z.ZodEffects<z.ZodString, string, string>;
        device: z.ZodString;
        inode: z.ZodString;
        created: z.ZodString;
    }, "strict", z.ZodTypeAny, {
        path: string;
        device: string;
        inode: string;
        created: string;
    }, {
        path: string;
        device: string;
        inode: string;
        created: string;
    }>;
    checkoutGitDir: z.ZodObject<{
        path: z.ZodEffects<z.ZodString, string, string>;
        device: z.ZodString;
        inode: z.ZodString;
        created: z.ZodString;
    }, "strict", z.ZodTypeAny, {
        path: string;
        device: string;
        inode: string;
        created: string;
    }, {
        path: string;
        device: string;
        inode: string;
        created: string;
    }>;
    checkout: z.ZodObject<{
        path: z.ZodEffects<z.ZodString, string, string>;
        device: z.ZodString;
        inode: z.ZodString;
        created: z.ZodString;
    }, "strict", z.ZodTypeAny, {
        path: string;
        device: string;
        inode: string;
        created: string;
    }, {
        path: string;
        device: string;
        inode: string;
        created: string;
    }>;
    checkoutParent: z.ZodObject<{
        path: z.ZodEffects<z.ZodString, string, string>;
        device: z.ZodString;
        inode: z.ZodString;
        created: z.ZodString;
    }, "strict", z.ZodTypeAny, {
        path: string;
        device: string;
        inode: string;
        created: string;
    }, {
        path: string;
        device: string;
        inode: string;
        created: string;
    }>;
    branchRef: z.ZodNullable<z.ZodString>;
    branchAware: z.ZodBoolean;
    linkedWorktree: z.ZodBoolean;
}, "strict", z.ZodTypeAny, {
    version: 1;
    ownerId: string;
    identity: string;
    projectPath: string;
    project: {
        path: string;
        device: string;
        inode: string;
        created: string;
    };
    repository: {
        path: string;
        device: string;
        inode: string;
        created: string;
    };
    commonGitDir: {
        path: string;
        device: string;
        inode: string;
        created: string;
    };
    checkoutGitDir: {
        path: string;
        device: string;
        inode: string;
        created: string;
    };
    checkout: {
        path: string;
        device: string;
        inode: string;
        created: string;
    };
    checkoutParent: {
        path: string;
        device: string;
        inode: string;
        created: string;
    };
    branchRef: string | null;
    branchAware: boolean;
    linkedWorktree: boolean;
}, {
    version: 1;
    ownerId: string;
    identity: string;
    projectPath: string;
    project: {
        path: string;
        device: string;
        inode: string;
        created: string;
    };
    repository: {
        path: string;
        device: string;
        inode: string;
        created: string;
    };
    commonGitDir: {
        path: string;
        device: string;
        inode: string;
        created: string;
    };
    checkoutGitDir: {
        path: string;
        device: string;
        inode: string;
        created: string;
    };
    checkout: {
        path: string;
        device: string;
        inode: string;
        created: string;
    };
    checkoutParent: {
        path: string;
        device: string;
        inode: string;
        created: string;
    };
    branchRef: string | null;
    branchAware: boolean;
    linkedWorktree: boolean;
}>;
/** Original local ownership, not an identity inferred from a collection name. */
export type LocalIndexOwnership = z.infer<typeof ownershipSchema>;
/** Automatic cleanup is off unless the operator explicitly declares local, non-shared use. */
export declare function automaticCleanupEnabled(): boolean;
/** The local declaration never enables deletion against an external or non-loopback store. */
export declare function assertLocalCleanupStore(): void;
/** Validate persisted ownership strictly; legacy and malformed records are never adopted. */
export declare function parseLocalIndexOwnership(value: unknown): LocalIndexOwnership | null;
/** Capture association only for a newly created, explicitly local identity. Failures mean report-only. */
export declare function captureLocalIndexOwnership(projectPath: string, identity: string): Promise<LocalIndexOwnership>;
/** Prove actual Git retirement. Filesystem absence alone, merges and switches never suffice. */
export declare function assertLocalIndexRetired(ownership: LocalIndexOwnership): Promise<void>;
export {};
//# sourceMappingURL=local-index-ownership.d.ts.map