import { ActorSpec, Definition, DependencySpec, PackageQuery } from '@devvit/protos';
import type { AssetMap } from '@devvit/shared-types/Assets.js';
import type { DeepPartial } from '@devvit/shared-types/BuiltinTypes.js';
import type { Config as ConfigInterface } from '@devvit/shared-types/Config.js';
import type { Namespace } from '@devvit/shared-types/Namespace.js';
import type { ClientFactory } from '../../lib/Types.js';
export declare class Config implements ConfigInterface {
    #private;
    get assets(): Readonly<AssetMap>;
    get webviewAssets(): Readonly<AssetMap>;
    get providedDefinitions(): Readonly<Definition>[];
    constructor(factory: ClientFactory, actorSpec: ActorSpec, assets: AssetMap, webviewAssets: AssetMap);
    export(namespace: Readonly<Namespace>): DependencySpec;
    provides(definition: Readonly<Definition>): void;
    use<T>(definition: Readonly<Definition>, options?: Readonly<DeepPartial<PackageQuery>>): T;
    uses(definition: Readonly<Definition>): boolean;
}
//# sourceMappingURL=Config.d.ts.map