export declare enum NodeType {
    Actor = "Actor",
    Cycle = "Cycle",
    ImpactAssessment = "ImpactAssessment",
    Organisation = "Organisation",
    Site = "Site",
    Source = "Source",
    Term = "Term"
}
export declare enum SchemaType {
    Actor = "Actor",
    Bibliography = "Bibliography",
    Completeness = "Completeness",
    Cycle = "Cycle",
    Emission = "Emission",
    ImpactAssessment = "ImpactAssessment",
    Indicator = "Indicator",
    Infrastructure = "Infrastructure",
    Input = "Input",
    Measurement = "Measurement",
    Organisation = "Organisation",
    Practice = "Practice",
    Product = "Product",
    Property = "Property",
    Site = "Site",
    Source = "Source",
    Term = "Term",
    Transformation = "Transformation"
}
export declare const searchableProperties: {
    [type in SchemaType]: string[];
};
export declare enum UploadLimit {
    Actor = 1000,
    Cycle = 2000,
    ImpactAssessment = 1000,
    Organisation = 1000,
    Site = 1000,
    Source = 300,
    Term = 1000
}
export declare const nestedSearchableKeys: string[];
export declare class JSON<T extends SchemaType> {
    type: T;
    /**
     * Not required, used to generate contextualized unique id.
     */
    id?: string;
}
export interface IContext {
    '@base': string;
    '@vocab': string;
}
export interface JSONLD<T extends NodeType> {
    '@context': string | Array<string | IContext>;
    '@type': T;
    '@id': string;
    name: string;
}
