/**
 * @license
 * Copyright 2022-2026 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
import { ScopedStorage } from "#bdx/ScopedStorage.js";
import { Bytes, StorageContext } from "@matter/general";
import { FileDesignator } from "./FileDesignator.js";
/**
 * A FileDesignator that points to a persisted file in a given StorageContext.
 * If the file is supposed to be used for Bdx transfers where it could be requested by a client and is not actively
 * sent or the location to store a received file, you need to pass a ScopedStorage to allow automatic target detection
 * for BDX.
 * The logic supports providing names separated by "." to automatically create sub contexts
 */
export declare class PersistedFileDesignator extends FileDesignator {
    #private;
    constructor(fd: string | Bytes | FileDesignator, storage: StorageContext | ScopedStorage);
    exists(): import("@matter/general").MaybePromise<boolean>;
    get blobName(): string;
    openBlob(): Promise<Blob>;
    writeFromStream(stream: ReadableStream<Bytes>): import("@matter/general").MaybePromise<void>;
    delete(): import("@matter/general").MaybePromise<void>;
}
//# sourceMappingURL=PersistedFileDesignator.d.ts.map