import type { _NSCopying } from "../Foundation/NSCopying.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _NSSecureCoding } from "../Foundation/NSSecureCoding.js";
import type { _NSString } from "../Foundation/NSString.js";
import type { _ASCredentialServiceIdentifier } from "./ASCredentialServiceIdentifier.js";
export declare class _ASPasswordCredentialIdentity extends _NSObject {
    static alloc(): _ASPasswordCredentialIdentity;
    static new(): _ASPasswordCredentialIdentity;
    init(): _ASPasswordCredentialIdentity;
    /**
     * @abstract Creates and initializes an instance of ASPasswordCredentialIdentity. @param serviceIdentifier the service identifier for which this credential identity is valid. @param user the user that can authenticate into the service indicated by the serviceIdentifier. @param recordIdentifier an optional string to uniquely identify this record in your local database.
     */
    static identityWithServiceIdentifier$user$recordIdentifier$(serviceIdentifier: _ASCredentialServiceIdentifier, user: _NSString, recordIdentifier: _NSString | null): _ASPasswordCredentialIdentity;
    /**
     * @abstract Initializes an instance of ASPasswordCredentialIdentity. @param serviceIdentifier the service identifier for which this credential identity is valid. @param user the user that can authenticate into the service indicated by the serviceIdentifier. @param recordIdentifier an optional string to uniquely identify this record in your local database.
     */
    initWithServiceIdentifier$user$recordIdentifier$(serviceIdentifier: _ASCredentialServiceIdentifier, user: _NSString, recordIdentifier: _NSString | null): _ASPasswordCredentialIdentity;
    /**
     * @abstract Get the service identifier. @result The service identifier for this credential identity.
     */
    serviceIdentifier(): _ASCredentialServiceIdentifier;
    /** @abstract Get the user. @result The user string. */
    user(): _NSString;
    /**
     * @abstract Get the record identifier. @result The record identifier. @discussion You can utilize the record identifier to uniquely identify the credential identity in your local database.
     */
    recordIdentifier(): _NSString | null;
    /**
     * @abstract Get or set the rank of the credential identity object. @discussion The system may utilize the rank to decide which credential identity precedes the other if two identities have the same service identifier. A credential identity with a larger rank value precedes one with a smaller value if both credential identities have the same service identifier. The default value of this property is 0.
     */
    rank(): number;
    setRank$(value: number): void;
}
export interface _ASPasswordCredentialIdentity extends _NSCopying, _NSSecureCoding {
}
