import * as rdfine from '@tpluscode/rdfine';
import type { RdfResourceCore } from '@tpluscode/rdfine/RdfResource';
import type * as RDF from '@rdfjs/types';
import type * as Rdf from '@rdfine/rdf';
import type * as Rdfs from '@rdfine/rdfs';
interface ClassEx<D extends RDF.DatasetCore = RDF.DatasetCore> {
    equivalentClass: Array<Rdfs.Class<D>>;
    intersectionOf: Array<Rdf.List<D>>;
    oneOf: Array<Rdf.List<D>>;
    unionOf: Array<Rdf.List<D>>;
}
declare module '@rdfine/rdfs/lib/Class' {
    interface Class<D extends RDF.DatasetCore> extends ClassEx<D> {
    }
}
export declare function ClassMixinEx<Base extends rdfine.ExtendingConstructor<Rdfs.Class, ClassEx>>(Resource: Base): rdfine.Constructor<ClassEx & RdfResourceCore> & Base;
export declare namespace ClassMixinEx {
    var appliesTo: RDF.NamedNode<string> & RDF.NamedNode<"http://www.w3.org/2000/01/rdf-schema#Class">;
}
export {};
