/**
 * Contentful Management API SDK. Allows you to create instances of a client
 * with access to the Contentful Content Management API.
 * @packageDocumentation
 */
import type { RestAdapterParams } from './adapters/REST/rest-adapter';
import type { XOR } from './common-types';
import type { AdapterParams } from './create-adapter';
import type { ClientAPI } from './create-contentful-api';
import type { PlainClientAPI } from './plain/plain-client-types';
import type { PlainClientDefaultParams } from './plain/plain-client';
import * as editorInterfaceDefaults from './constants/editor-interface-defaults';
import { ScheduledActionStatus } from './entities/scheduled-action';
export type { ClientAPI } from './create-contentful-api';
export { asIterator } from './plain/as-iterator';
export { fetchAll } from './plain/pagination-helper';
export { isDraft, isPublished, isUpdated } from './plain/checks';
export type { PlainClientAPI } from './plain/plain-client-types';
export { RestAdapter } from './adapters/REST/rest-adapter';
export type { RestAdapterParams } from './adapters/REST/rest-adapter';
export { makeRequest } from './adapters/REST/make-request';
export { editorInterfaceDefaults };
export type { PlainClientDefaultParams } from './plain/plain-client';
export { ScheduledActionStatus };
export { OptionalDefaults } from './plain/wrappers/wrap';
export type * from './export-types';
interface UserAgentParams {
    /**
     * Application name and version e.g myApp/version
     */
    application?: string;
    /**
     * Integration name and version e.g react/version
     */
    integration?: string;
    feature?: string;
}
export type ClientOptions = UserAgentParams & XOR<RestAdapterParams, AdapterParams>;
/**
 * Create a client instance
 * @param clientOptions - Client initialization parameters
 *
 * ```javascript
 * const client = contentfulManagement.createClient({
 *  accessToken: 'myAccessToken'
 * })
 * ```
 */
export declare function createClient(clientOptions: ClientOptions): PlainClientAPI;
export declare function createClient(clientOptions: ClientOptions, opts: {
    type?: 'plain';
    defaults?: PlainClientDefaultParams;
}): PlainClientAPI;
/**
 * @deprecated The nested (legacy) client is deprecated and will be removed in the next major version. Use the plain client instead.
 */
export declare function createClient(clientOptions: ClientOptions, opts: {
    type: 'legacy';
}): ClientAPI;
