@itwin/imodels-client-management
Version:
iModels API client wrapper for applications that manage iModels.
15 lines • 673 B
TypeScript
/** Generic dictionary with string keys. */
export interface Dictionary<T> {
[key: string]: T;
}
/** Wrapper type that makes all properties of `T` required recursively. */
export type RecursiveRequired<T> = Required<T> & {
[P in keyof T]: RecursiveRequired<T[P]>;
};
/** Wrapper type that makes all properties in `T` optional except for the one specified. */
export type OptionalExceptFor<T, TRequired extends keyof T> = Partial<T> & Pick<T, TRequired>;
/** Wrapper type that requires at least one property of `T` to be set. */
export type AtLeastOneProperty<T> = {
[P in keyof T]: OptionalExceptFor<T, P>;
}[keyof T];
//# sourceMappingURL=UtilityTypes.d.ts.map