import { SchemaRegistry } from './types';
export declare function parseSchemaFile(file: string): Promise<SchemaRegistry>;
export declare function parseSchemaJson(json: string): SchemaRegistry;
export declare function parseSpecs(file: string): Promise<SpecRegistry>;
export declare function parseSpecsJson(json: string): SpecRegistry;
export declare class SpecRegistry {
    readonly spec: Spec;
    constructor(spec: Spec);
    getDocumentation(id: string, property?: string): string | undefined;
    private findType;
}
declare type Spec = {
    PropertyTypes: Record<string, PropertiesSpec>;
    ResourceTypes: Record<string, ResourcesSpec>;
};
declare type PropertiesSpec = {
    Documentation?: string;
    Properties?: Record<string, PropertySpec>;
};
declare type PropertySpec = TypeSpec;
declare type ResourcesSpec = {
    Documentation?: string;
    Attributes?: Record<string, AttributeSpec>;
    Properties?: Record<string, ResourceSpec>;
};
declare type ResourceSpec = TypeSpec;
declare type AttributeSpec = {
    PrimitiveType: string;
};
declare type TypeSpec = {
    Documentation?: string;
    UpdateType?: string;
    Required?: boolean;
    PromitiveType?: string;
    ItemType?: string;
    Type?: string;
};
export {};
