/**
 * @license
 * Copyright 2022-2026 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
import { Bytes, Diagnostic } from "#general";
import { NodeId } from "#types";
/**
 * Class to represent a File designator from Matter.
 * Specification wise this is a bytes object, but to store in a storage we need a string name.
 * This class provides a way to convert between the two.
 */
export declare class FileDesignator {
    #private;
    [Diagnostic.value]: string;
    /**
     * Initialize a FileDesignator from a BDX URI string. Also returns the source node ID of the owner of the file.
     */
    static fromBdxUri(uri: string): {
        fileDesignator: FileDesignator;
        sourceNodeId: NodeId;
    };
    /** Create a FileDesignator from a string or bytes object. */
    constructor(fd: string | Bytes);
    /** Return the bytes representation of the FileDesignator. */
    get bytes(): Bytes;
    /** Return the textual/string representation of the FileDesignator. */
    get text(): string;
    /**
     * Return the FileDesignator as a BDX URI string. The source node ID of the owner of the file is required to
     * generate a valid URI.
     */
    asBdxUri(sourceNode: NodeId): string;
}
//# sourceMappingURL=FileDesignator.d.ts.map