import type { Entry } from "@zip.js/zip.js";
import { Project } from "../project.js";
/**
 * Convert the color in &HAARRGGBB format to #RRGGBBAA format
 * @param color
 */
export declare function parseAiColor(color: string): string;
export declare function parseAiBoolean(bool: string): bool is "True";
export declare function getFileInfo(file: Entry): [string, string];
export declare function readProjectProperties(file: Entry): Promise<import("properties-file").KeyValuePairObject>;
export declare function getDescriptor(componentType: string, project: Project): {
    type: string;
    name: string;
    external: string;
    version: string;
    dateBuilt: string;
    categoryString: string;
    helpString: string;
    helpUrl: string;
    showOnPalette: string;
    nonVisible: string;
    iconName: string;
    androidMinSdk: number;
    properties: {
        name: string;
        editorType: string;
        defaultValue: string;
        propertyType: string;
        editorArgs: never[];
    }[];
    blockProperties: {
        name: string;
        description: string;
        type: string;
        rw: string;
        deprecated: string;
    }[];
    events: {
        name: string;
        description: string;
        deprecated: string;
        params: {
            name: string;
            type: string;
        }[];
    }[];
    methods: ({
        name: string;
        description: string;
        deprecated: string;
        params: {
            name: string;
            type: string;
        }[];
        returnType: string;
    } | {
        name: string;
        description: string;
        deprecated: string;
        params: {
            name: string;
            type: string;
        }[];
        returnType?: undefined;
    })[];
} | Record<string, any> | null;
