@omnia/fx-models
Version:
Provide Omnia Fx Models Stuffs.
55 lines (54 loc) • 1.64 kB
TypeScript
import { GuidValue } from "@omnia/fx-models/internal-do-not-import-from-here/shared";
import { MultilingualString } from "../MultilingualString";
import { IdentityProviderProperty } from "./IdentityProviderProperty";
import { IdentityProviderRunStatus } from "./IdentityProviderRunStatus";
export interface IdentityProviderSettingsBase {
schedule: string;
started?: Date;
ended?: Date;
status: IdentityProviderRunStatus;
fullSyncOnNextRun: boolean;
fullUserSyncOnNextRun: boolean;
fullLogOnNextRun: boolean;
togglePauseOnNextRun: boolean;
setupComplete: boolean;
nextScheduledRun?: Date;
}
export interface IdentityProviderSettingsValue {
}
export interface IdentityProviderSettings<T extends IdentityProviderSettingsValue> extends IdentityProviderSettingsBase {
value: T;
}
export interface IdentityProviderSettingsBuiltInValue {
userTypeEvaluations: UserTypeEvaluation[];
usersFilter: IdentityFilter;
}
export interface IdentityFilter {
evalEmptyAsTrue: boolean;
isExcludeFilter: boolean;
evaluationSets: EvaluationSet[];
}
export interface UserTypeEvaluation {
displayName: MultilingualString;
userTypeId: GuidValue;
evaluationSets: EvaluationSet[];
}
export interface EvaluationSet {
property: IdentityProviderProperty;
rules: Rule[];
}
export interface Rule {
property: IdentityProviderProperty;
value: string;
typeOfCompare: RuleCompareType;
}
export declare enum RuleCompareType {
Equals = 0,
Contains = 1,
StartsWith = 2,
EndsWith = 3,
NotEquals = 4,
NotContains = 5,
NotStartsWith = 6,
NotEndsWith = 7
}