import { SDataArray } from 's-array'; import { DataSignal } from 's-js'; import { Plain } from '../../utils/s'; import { Contributor } from '../contributor/contributor-model'; /** * Non-transient state of the settings UI component. */ export interface Settings { readonly name: DataSignal; readonly youTrackBaseUrl: DataSignal; readonly youTrackServiceId: DataSignal; readonly stateFieldId: DataSignal; readonly inactiveStateIds: DataSignal>; readonly remainingEffortFieldId: DataSignal; readonly remainingWaitFieldId: DataSignal; readonly assigneeFieldId: DataSignal; readonly typeFieldId: DataSignal; readonly splittableTypeIds: DataSignal>; readonly dependsLinkTypeId: DataSignal; readonly doesInwardDependOnOutward: DataSignal; readonly savedQuery: DataSignal; readonly overlaySavedQuery: DataSignal; readonly contributors: SDataArray; } /** * Creates a new state for the settings UI component. */ export declare function createSettings(): Settings; /** * Updates the state of the settings UI component to the given values in a plain JSON object. * * The update is performed within a single S.js transaction. * * @param settings state of the settings UI component * @param plain plain JSON object */ export declare function assignSettings(settings: Settings, plain: Plain): void; /** * Creates a new normalized plain JSON value for the given settings. * * Normalization means that the YouTrack base URL is the result of {@link normalizedBaseUrl}(). */ export declare function toNormalizedPlainSettings(settings: Settings): Plain; /** * Returns the normalized YouTrack base URL. * * Normalization means returning a syntactically valid URL that ends with a slash (/). * * @return the normalized URL, or the empty string if the given URL is not valid */ export declare function normalizedBaseUrl(baseUrl: string): string; //# sourceMappingURL=settings-model.d.ts.map