import { UmbContextBase } from '../../../../libs/class-api/index.js';
import { UmbContextToken } from '../../../../libs/context-api/index.js';
import type { UmbControllerHost } from '../../../../libs/controller-api/index.js';
import type { UmbApi } from '../../../../libs/extension-api/index.js';
import { type MediaConfigurationResponseModel } from '../../../core/backend-api/index.js';
/**
 * A context for fetching and caching the media configuration.
 * @internal
 */
export declare class UmbMediaConfigurationContext extends UmbContextBase implements UmbApi {
    #private;
    constructor(host: UmbControllerHost);
    /**
     * Get the media configuration from the server, or return the cached configuration if it has already been fetched.
     * @returns A promise that resolves to the media configuration, or null if the configuration could not be fetched.
     */
    getMediaConfiguration(): Promise<MediaConfigurationResponseModel | null>;
}
export default UmbMediaConfigurationContext;
/**
 * @internal
 */
export declare const UMB_MEDIA_CONFIGURATION_CONTEXT: UmbContextToken<UmbMediaConfigurationContext, UmbMediaConfigurationContext>;
