UNPKG

@sitecore/sc-contenthub-webclient-sdk

Version:

Sitecore Content Hub WebClient SDK.

50 lines (49 loc) 2.38 kB
import CultureInfo from "../../culture-info"; import { ICultureSensitiveDirtyTracking } from "../dirty-tracking/dirty-tracking"; import { PropertyDataType, PropertyValue, PropertyValuePerCulture, TypeInfo } from "./data-type"; import { IProperty, PropertyBase } from "./property"; export interface ICultureSensitiveProperty<T extends PropertyDataType | unknown = PropertyDataType, B extends boolean = boolean> extends IProperty, ICultureSensitiveDirtyTracking { /** * Gets the value for a specific culture. * @param culture - The culture for which to get the value * @returns The value or null. */ getValue(culture: CultureInfo): PropertyValue<T, B>; /** * Gets all values for the specified cultures * @param cultures - The cultures to get the values for * @returns The values per culture. A value can be null for a certain culture. */ getValues(cultures?: Array<CultureInfo>): PropertyValuePerCulture<T, B>; /** * Gets all cultures that the property supports. * These are always equal to the cultures the {@link IEntity} was loaded with. * @returns List of cultures. */ getCultures(): Array<CultureInfo>; /** * Sets a value for a specific culture. * @param culture - The culture for which to set the value * @param value - The value */ setValue(culture: CultureInfo, value: PropertyValue<T, B>): void; } export declare class CultureSensitiveProperty<T extends PropertyDataType | unknown, B extends boolean> extends PropertyBase<T, B> implements ICultureSensitiveProperty<T, B> { private readonly _loadedCultures; private readonly _values; private _dirtyValueCalculators; readonly isMultiLanguage: true; isTracking: boolean; get isDirty(): boolean; constructor(name: string, typeInfo: TypeInfo<T, B>, loadedCultures: Array<CultureInfo>, values?: PropertyValuePerCulture<T, B>, hasDataSource?: boolean); getTypeName(): string; getValue(culture: CultureInfo): PropertyValue<T, B>; getValues(cultures?: Array<CultureInfo>): PropertyValuePerCulture<T, B>; getCultures(): Array<CultureInfo>; setValue(culture: CultureInfo, value: PropertyValue<T, B>): void; startTracking(): void; markClean(): void; getDirtyCultures(): Array<CultureInfo>; private cultureMustBeLoaded; private culturesMustBeLoaded; }