import * as monaco from 'monaco-editor';
export declare function lockCodeWithoutDecoration(editor: monaco.editor.ICodeEditor, decorationFilter: (decoration: monaco.editor.IModelDecoration) => boolean, allowChangeFromSources?: string[], errorMessage?: string): monaco.IDisposable;
export declare function hideCodeWithoutDecoration(editor: monaco.editor.ICodeEditor, decorationFilter: (decoration: monaco.editor.IModelDecoration) => boolean): monaco.IDisposable;
/**
 * Collapse everything between startToken and endToken
 */
export declare function collapseCodeSections(editor: monaco.editor.ICodeEditor, startToken: string, endToken: string, isRegex?: boolean): Promise<void>;
interface IDecorationProvider {
    provideDecorations(model: monaco.editor.ITextModel): monaco.editor.IModelDeltaDecoration[];
}
export declare function registerTextDecorationProvider(provider: IDecorationProvider): monaco.IDisposable;
export declare function runOnAllEditors(cb: (editor: monaco.editor.ICodeEditor) => monaco.IDisposable): monaco.IDisposable;
export declare function preventAlwaysConsumeTouchEvent(editor: monaco.editor.ICodeEditor): void;
export declare function addPlaceholder(editor: monaco.editor.ICodeEditor, placeholder: string): monaco.IDisposable;
export declare function mapClipboard(editor: monaco.editor.ICodeEditor, { toClipboard, fromClipboard }: {
    toClipboard: (data: string) => string;
    fromClipboard: (data: string) => string;
}): monaco.IDisposable;
export {};
