import { IKosDataModel } from '../kosModel';
interface KosModelConfig {
    modelTypeId: string;
    singleton?: boolean;
    autoRegister?: boolean;
    /**
     * Indicates whether this model requires options to be provided during instantiation.
     * When true, the framework will throw an error if an empty or undefined options object
     * is provided when creating a dependency with DependencyResolutionPolicy.CREATE.
     * @default false
     */
    optionsRequired?: boolean;
}
/**
 * Decorator for defining a Kos Data Model class.
 *
 * @param config - The model configuration. Can be a string (backward compatibility) or configuration object.
 * @returns A decorator function that transforms the class into a KOS-compatible model.
 * @kosService core.kos-model
 * @kosApiLevel 2
 */
export declare function kosModel<T extends IKosDataModel, O extends object = Record<string, any>>(config: string | KosModelConfig): ClassDecorator;
export {};
//# sourceMappingURL=kosModel.d.ts.map