import type { _NSCopying } from "../Foundation/NSCopying.js";
import type { _NSDictionary } from "../Foundation/NSDictionary.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _NSString } from "../Foundation/NSString.js";
import type { _NSURL } from "../Foundation/NSURL.js";
import type { _NSPersistentCloudKitContainerOptions } from "./NSPersistentCloudKitContainerOptions.js";
export declare class _NSPersistentStoreDescription extends _NSObject {
    static alloc(): _NSPersistentStoreDescription;
    static new(): _NSPersistentStoreDescription;
    init(): _NSPersistentStoreDescription;
    static persistentStoreDescriptionWithURL$(URL: _NSURL): _NSPersistentStoreDescription;
    setOption$forKey$(option: _NSObject | null, key: _NSString): void;
    setValue$forPragmaNamed$(value: _NSObject | null, name: _NSString): void;
    /**
     * Returns a store description instance with default values for the store located at `URL` that can be used immediately with `addPersistentStoreWithDescription:completionHandler:`.
     */
    initWithURL$(url: _NSURL): _NSPersistentStoreDescription;
    type(): _NSString;
    setType$(value: _NSString): void;
    configuration(): _NSString | null;
    setConfiguration$(value: _NSString | null): void;
    URL(): _NSURL | null;
    setURL$(value: _NSURL | null): void;
    options(): _NSDictionary;
    /** Store options */
    readOnly(): boolean;
    setReadOnly$(value: boolean): void;
    timeout(): number;
    setTimeout$(value: number): void;
    sqlitePragmas(): _NSDictionary;
    /** addPersistentStore-time behaviours */
    shouldAddStoreAsynchronously(): boolean;
    setShouldAddStoreAsynchronously$(value: boolean): void;
    shouldMigrateStoreAutomatically(): boolean;
    setShouldMigrateStoreAutomatically$(value: boolean): void;
    shouldInferMappingModelAutomatically(): boolean;
    setShouldInferMappingModelAutomatically$(value: boolean): void;
    /**
     * Use this property to apply customized instances of NSPersistentCloudKitContainerOptions to a store description you wish to use with CloudKit.
     */
    cloudKitContainerOptions(): _NSPersistentCloudKitContainerOptions | null;
    setCloudKitContainerOptions$(value: _NSPersistentCloudKitContainerOptions | null): void;
}
export interface _NSPersistentStoreDescription extends _NSCopying {
}
