import type { NobjcObject } from "objc-js";
import type { _NSCopying } from "../Foundation/NSCopying.js";
import type { _NSFastEnumeration } from "../Foundation/NSFastEnumeration.js";
import type { _NSMutableCopying } from "../Foundation/NSMutableCopying.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _NSString } from "../Foundation/NSString.js";
export declare class _ABMultiValue extends _NSObject {
    static alloc(): _ABMultiValue;
    static new(): _ABMultiValue;
    init(): _ABMultiValue;
    count(): number;
    /** Returns the number of value/label pairs */
    valueAtIndex$(index: number): NobjcObject;
    /** Returns a value at a given index Raises if index is out of bounds */
    labelAtIndex$(index: number): _NSString;
    /** Returns a label at a given index Raises if index is out of bounds */
    identifierAtIndex$(index: number): _NSString;
    /** Returns an identifier at a given index Raises if index is out of bounds */
    indexForIdentifier$(identifier: _NSString): number;
    /** Returns the index of a given identifier Returns NSNotFound if not found */
    primaryIdentifier(): _NSString;
    /** Identifier for the primary value */
    propertyType(): number;
    /**
     * Type of this multivalue (kABMultiXXXXProperty) Returns kABErrorInProperty if this multi-value is empty or not all values have the same type.
     */
    valueForIdentifier$(identifier: _NSString): NobjcObject;
    /**
     * Returns the value for a given identifier Returns nil if the identifier is not found
     */
    labelForIdentifier$(identifier: _NSString): NobjcObject;
}
export interface _ABMultiValue extends _NSCopying, _NSMutableCopying, _NSFastEnumeration {
}
