import type { CID } from "multiformats/cid";
import { BaseLink, SoftLink } from "../../types.js";
import { Metadata } from "../../metadata.js";
import { AddResult } from "../../../ipfs/index.js";
import { BareNameFilter, PrivateName } from "./namefilter.js";
export declare type DecryptedNode = PrivateFileInfo | PrivateTreeInfo;
export declare type PrivateFileInfo = {
    content: CID | string;
    metadata: Metadata;
    bareNameFilter: BareNameFilter;
    revision: number;
    key: string;
};
export declare type PrivateLink = BaseLink & {
    key: string;
    pointer: PrivateName;
};
export declare type PrivateLinks = {
    [name: string]: PrivateLink | SoftLink;
};
export declare type PrivateTreeInfo = {
    metadata: Metadata;
    bareNameFilter: BareNameFilter;
    revision: number;
    links: PrivateLinks;
    skeleton: PrivateSkeleton;
};
export declare type PrivateSkeleton = {
    [name: string]: PrivateSkeletonInfo | SoftLink;
};
export declare type PrivateSkeletonInfo = {
    cid: CID | string;
    key: string;
    subSkeleton: PrivateSkeleton;
};
export declare type PrivateAddResult = AddResult & {
    name: PrivateName;
    key: string;
    skeleton: PrivateSkeleton;
};
export declare type Revision = {
    cid: CID | string;
    name: PrivateName;
    number: number;
};
