import { FileFolderType, ISaveFileResponse, ITab, WebformState, WebformStateCondition } from '../types';
export declare const ROOT_WEBFORM_STATE: {
    label: string;
    id: string;
};
export declare const THEME_CLASSES: string[];
export declare const isBaseState: (state: WebformState) => boolean;
export declare const refactorConditions: (condition: WebformStateCondition, stateLabel: string | undefined, newValue?: string) => WebformStateCondition;
export declare function refactorWebform(content: ITab['content'], state: WebformState): any;
export declare const updateDsCondition: (condition: WebformStateCondition, oldRef: string, newRef: string) => WebformStateCondition;
export declare const deepDeleteCondition: (condition: WebformStateCondition, targetId: string) => WebformStateCondition | null;
export declare const deepSanitizeCondition: (condition: WebformStateCondition) => WebformStateCondition;
export declare function getDefaultContent(root: FileFolderType, projectSettings?: Record<string, any>): "" | never[] | {
    metadata: {
        v: string;
        datasources: never[];
        styles: never[];
    };
    components: {
        ROOT: {
            parent: string;
            type: {
                resolvedName: string;
            };
            isCanvas: boolean;
            props: {
                airyMode: boolean;
                className: string;
                classNames: never[];
                events: never[];
            };
            displayName: string;
            custom: {};
            hidden: boolean;
            nodes: never[];
            linkedNodes: {};
        };
    };
} | "//%attributes = {}\n" | {
    metadata: {
        v: string;
        datasources: never[];
        styles: never[];
    };
    pages: {
        name: string;
        id: string;
        components: {
            ROOT: {
                type: {
                    resolvedName: string;
                };
                isCanvas: boolean;
                props: {
                    classNames: never[];
                    events: never[];
                    airyMode: boolean;
                    className: string;
                };
                displayName: string;
                custom: {};
                parent: string;
                hidden: boolean;
                nodes: never[];
                linkedNodes: {};
            };
        };
    }[];
    permissions?: undefined;
    privileges?: undefined;
    roles?: undefined;
} | {
    metadata?: undefined;
    pages?: undefined;
    permissions?: undefined;
    privileges?: undefined;
    roles?: undefined;
} | {
    permissions: {
        allowed: never[];
    };
    privileges: never[];
    roles: never[];
    metadata?: undefined;
    pages?: undefined;
};
export declare function selectorEqualityFn(left: unknown, right: unknown): boolean;
export declare function getFilePath(file: Pick<ISaveFileResponse, 'name' | 'type'>, options?: Partial<{
    withExtension: boolean;
    qodly: boolean;
}>): string;
