import { Store } from "./store";
import { PropertyRepository } from "./property-repository";
import { DefinitionQueryOptions } from "./resource-repository";
/**
 * A repository for retrieving classes from graphs.
 */
export declare class IndividualRepository extends PropertyRepository {
    constructor(store: Store);
    /**
     * Get all classes that have instances or all types of a specific individual.
     * @param graphUris The graph URIs to search.
     * @param subjectUri The URI of a subject for which to get the types (optional).
     * @param options Options for retrieving the individuals.
     * @returns An iterator of all individual types, or all types of a specific individual.
     */
    getIndividualTypes(graphUris: string | string[] | undefined, subjectUri?: string, options?: DefinitionQueryOptions): IterableIterator<string>;
    /**
     * Get all individuals in the repository.
     * @param typeUri The type of the individuals to get.
     * @param options Options for retrieving the individuals.
     * @returns An iterator of all individuals in the repository.
     */
    getIndividuals(graphUris: string | string[] | undefined, typeUri?: string, options?: DefinitionQueryOptions): IterableIterator<string>;
    /**
     * Indicate if the subject is an instance of the type, or of one of its super types.
     * @param subjectUri URI of the subject.
     * @param typeUri URI of the type to check.
     * @returns true if the subject is an instance of the type, or of one of its super types.
     */
    isInstanceOfType(graphUris: string | string[] | undefined, subjectUri: string, typeUri: string): boolean;
}
