import type { NobjcObject } from "objc-js";
import type { _NSDictionary } from "./NSDictionary.js";
import type { _NSNotification } from "./NSNotification.js";
import type { _NSObject } from "./NSObject.js";
import type { _NSOperationQueue } from "./NSOperationQueue.js";
import type { _NSString } from "./NSString.js";
export declare class _NSNotificationCenter extends _NSObject {
    static alloc(): _NSNotificationCenter;
    static new(): _NSNotificationCenter;
    init(): _NSNotificationCenter;
    static defaultCenter(): _NSNotificationCenter;
    addObserver$selector$name$object$(observer: NobjcObject, aSelector: string, aName: _NSString | null, anObject: NobjcObject | null): void;
    postNotification$(notification: _NSNotification): void;
    postNotificationName$object$(aName: _NSString, anObject: NobjcObject | null): void;
    postNotificationName$object$userInfo$(aName: _NSString, anObject: NobjcObject | null, aUserInfo: _NSDictionary | null): void;
    removeObserver$(observer: NobjcObject): void;
    removeObserver$name$object$(observer: NobjcObject, aName: _NSString | null, anObject: NobjcObject | null): void;
    addObserverForName$object$queue$usingBlock$(name: _NSString | null, obj: NobjcObject | null, queue: _NSOperationQueue | null, block: (notification: _NSNotification) => void): _NSObject;
}
