import { GuidValue } from "@omnia/fx-models/internal-do-not-import-from-here/shared/models";
import { PropertyValueBinding } from "../properties";
import { IdentityTypes } from "./IdentityTypes";
export interface IResolvedIdentity {
    id: GuidValue;
    type: IdentityTypes;
    providerId: GuidValue;
    isRemoved: boolean;
    propertyValues: PropertyValueBinding<any>[];
    toIdString?: () => string;
}
export declare abstract class Identity {
    readonly id: GuidValue;
    abstract readonly type: IdentityTypes;
    constructor(id: GuidValue);
    toIdString(): string;
    static parse(identity: Identity | IResolvedIdentity | string): Identity;
    static isValid(identity: Identity): boolean;
    static createFromString(idAndType: string): Identity;
    private static getGuidValue;
    private static getIdAsString;
}
export declare enum ArchiveSortColumn {
    DisplayName = 1,
    Email = 2,
    Username = 3,
    IdentityType = 4,
    ProviderId = 5,
    TypeId = 6
}
