import { type AddBadgeParams } from './badge/add.js';
import { type RemoveBadgeParams } from './badge/remove.js';
import { type CreateClaimParams, type CreateClaimResponse } from './claim/create.js';
import { type MoveClaimParams, type MoveClaimResponse } from './claim/move.js';
import { type RemoveClaimParams, type RemoveClaimResponse } from './claim/remove.js';
import { type SetClaimParams, type SetClaimResponse } from './claim/set.js';
import { type UpdateClaimParams, type UpdateClaimResponse } from './claim/update.js';
import { type CreateEntityParams, type CreateEntityResponse } from './entity/create.js';
import { type DeleteEntityParams, type DeleteEntityResponse } from './entity/delete.js';
import { type EditEntityRawModeParams, type EditEntitySimplifiedModeParams } from './entity/edit.js';
import { type MergeEntityParams, type MergeEntityResponse } from './entity/merge.js';
import { type MoveQualifierParams, type MoveQualifierResponse } from './qualifier/move.js';
import { type RemoveQualifierParams, type RemoveQualifierResponse } from './qualifier/remove.js';
import { type SetQualifierParams, type SetQualifierResponse } from './qualifier/set.js';
import { type UpdateQualifierParams } from './qualifier/update.js';
import { type RemoveReferenceParams, type RemoveReferenceResponse } from './reference/remove.js';
import { type SetReferenceParams, type SetReferenceResponse } from './reference/set.js';
import { type SetSitelinkParams, type SetSitelinkResponse } from './sitelink/set.js';
import type { AliasActionParams, AliasActionResponse } from './alias/action.js';
import type { TermActionParams, TermActionResponse } from './label_or_description/set.js';
import type { GeneralConfig, RequestConfig } from './types/config.js';
/**
 * See https://github.com/maxlath/wikibase-edit/blob/main/docs/how_to.md#config
 */
export default function WBEdit(generalConfig?: GeneralConfig): {
    getAuthData(reqConfig: RequestConfig): (params?: {
        refresh?: boolean;
    }) => Promise<import("./request/get_final_token.js").ParsedTokenInfo>;
    label: {
        readonly set: (params: TermActionParams, reqConfig?: RequestConfig) => Promise<TermActionResponse>;
    };
    description: {
        readonly set: (params: TermActionParams, reqConfig?: RequestConfig) => Promise<TermActionResponse>;
    };
    alias: {
        readonly set: (params: AliasActionParams, reqConfig?: RequestConfig) => Promise<AliasActionResponse>;
        readonly add: (params: AliasActionParams, reqConfig?: RequestConfig) => Promise<AliasActionResponse>;
        readonly remove: (params: AliasActionParams, reqConfig?: RequestConfig) => Promise<AliasActionResponse>;
    };
    claim: {
        readonly set: (params: SetClaimParams, reqConfig?: RequestConfig) => Promise<SetClaimResponse>;
        readonly remove: (params: RemoveClaimParams, reqConfig?: RequestConfig) => Promise<RemoveClaimResponse>;
    } & {
        readonly create: (params: CreateClaimParams, reqConfig?: RequestConfig) => Promise<CreateClaimResponse>;
        readonly update: (params: UpdateClaimParams, reqConfig?: RequestConfig) => Promise<UpdateClaimResponse>;
        readonly move: (params: MoveClaimParams, reqConfig?: RequestConfig) => Promise<MoveClaimResponse>;
    };
    qualifier: {
        readonly set: (params: SetQualifierParams, reqConfig?: RequestConfig) => Promise<SetQualifierResponse>;
        readonly remove: (params: RemoveQualifierParams, reqConfig?: RequestConfig) => Promise<RemoveQualifierResponse>;
    } & {
        readonly update: (params: UpdateQualifierParams, reqConfig?: RequestConfig) => Promise<SetQualifierResponse>;
        readonly move: (params: MoveQualifierParams, reqConfig?: RequestConfig) => Promise<MoveQualifierResponse>;
    };
    reference: {
        readonly set: (params: SetReferenceParams, reqConfig?: RequestConfig) => Promise<SetReferenceResponse>;
        readonly remove: (params: RemoveReferenceParams, reqConfig?: RequestConfig) => Promise<RemoveReferenceResponse>;
    };
    entity: {
        readonly create: (params: CreateEntityParams, reqConfig?: RequestConfig) => Promise<CreateEntityResponse>;
        readonly edit: (params: EditEntitySimplifiedModeParams, reqConfig?: RequestConfig) => Promise<CreateEntityResponse>;
        readonly merge: (params: MergeEntityParams, reqConfig?: RequestConfig) => Promise<MergeEntityResponse>;
        readonly delete: (params: DeleteEntityParams, reqConfig?: RequestConfig) => Promise<DeleteEntityResponse>;
        readonly _rawEdit: (params: EditEntityRawModeParams, reqConfig?: RequestConfig) => Promise<CreateEntityResponse>;
    };
    sitelink: {
        readonly set: (params: SetSitelinkParams, reqConfig?: RequestConfig) => Promise<SetSitelinkResponse>;
    };
    badge: {
        readonly add: (params: AddBadgeParams, reqConfig?: RequestConfig) => Promise<SetSitelinkResponse>;
        readonly remove: (params: RemoveBadgeParams, reqConfig?: RequestConfig) => Promise<SetSitelinkResponse>;
    };
};
export type WikibaseEditAPI = ReturnType<typeof WBEdit>;
export * from './types/config.js';
export * from './types/edit_entity.js';
export * from './types/snaks.js';
export type * from './entity/create.js';
export type * from './entity/edit.js';
//# sourceMappingURL=index.d.ts.map