import type { UmbCurrentUserConfigurationModel } from '../../user/types.js';
import { UmbRepositoryBase } from '../../../core/repository/index.js';
import type { UmbApi } from '../../../../libs/extension-api/index.js';
import type { UmbControllerHost } from '../../../../libs/controller-api/index.js';
import type { Observable } from '../../../../libs/observable-api/index.js';
export declare class UmbCurrentUserConfigRepository extends UmbRepositoryBase implements UmbApi {
    #private;
    /**
     * Promise that resolves when the repository has been initialized, i.e. when the user configuration has been fetched from the server.
     * @memberof UmbCurrentUserConfigRepository
     */
    initialized: Promise<void>;
    constructor(host: UmbControllerHost);
    /**
     * Subscribe to the entire user configuration.
     */
    all(): Observable<import("../../../core/backend-api/index.js").CurrentUserConfigurationResponseModel | null>;
    /**
     * Subscribe to a part of the user configuration.
     * @param part
     */
    part<Part extends keyof UmbCurrentUserConfigurationModel>(part: Part): Observable<UmbCurrentUserConfigurationModel[Part]>;
}
export default UmbCurrentUserConfigRepository;
