import { ComputedRef } from 'vue'; import { EditorController } from '../editor/controller'; import { Attribute, EmbeddableCatalogEntry, Entity, GroupCodeValue, MultiLangText } from '../core/types'; import { JavaTypeDef } from '../core/javaTypes'; import { isMultiColumnFk } from '../core/fkDerived'; export declare function useAttributeEditing(c: EditorController, entityId: () => string): { SERIALIZED_FIELD_CONTAINERS: readonly ["none", "LIST", "SET"]; setCollectionType: (a: Attribute, v: string) => void; entity: ComputedRef; isValueType: ComputedRef; isColumnless: ComputedRef; focusedAttrIds: ComputedRef>; personalInfoItems: string[]; piiLabel: (v: string) => string; idn: (s: T) => T; setAttr: (a: Attribute, patch: Partial) => void; isDerivedIdRow: (a: Attribute) => boolean; rowName: (a: Attribute) => string; rowNamePlaceholder: (a: Attribute) => string; setRowName: (a: Attribute, v: string) => void; assocFieldName: (a: Attribute) => string; setAssocFieldName: (a: Attribute, v: string) => void; nameLocked: (a: Attribute) => boolean; nameLockedHint: (a: Attribute) => string; isManagedFk: (a: Attribute) => boolean; setNaturalId: (a: Attribute, v: boolean) => void; clearNaturalIdPatch: () => Partial; setIdentifier: (a: Attribute, v: boolean) => void; setTransient: (a: Attribute, v: boolean) => void; dbLocked: (a: Attribute) => boolean; fkDerived: (a: Attribute) => boolean; fkOriginPhysical: (a: Attribute, i?: number) => string | undefined; setSequenceName: (a: Attribute, v: string) => void; sequencePlaceholder: (a: Attribute) => string; sequenceNameOptions: (a: Attribute) => string[]; typeLocked: (a: Attribute) => boolean; typeValueOf: (t: JavaTypeDef) => string; typeLabelOf: (t: JavaTypeDef) => string; setAttrType: (a: Attribute, v: string | undefined) => void; setAttrCustomType: (a: Attribute, v: string) => void; setDb: (a: Attribute, patch: Record) => void; scaleApplicable: (a: Attribute) => boolean; scaleHint: (a: Attribute) => string | undefined; setDbLogical: (a: Attribute, value: MultiLangText) => void; setAttrLogical: (a: Attribute, value: MultiLangText) => void; logicalNameOf: (a: Attribute) => MultiLangText | undefined; setLogicalName: (a: Attribute, value: MultiLangText) => void; setAttrDescription: (a: Attribute, value: MultiLangText) => void; attrPiiValue: (a: Attribute) => string; setAttrPii: (a: Attribute, v: string) => void; predefinedCustomTypeCatalog: ComputedRef; serializedTypeNames: ComputedRef; embeddableCatalog: ComputedRef; predefinedLabel: (e: EmbeddableCatalogEntry) => string; groupCodeCatalog: ComputedRef; attrGroupCodes: (a: Attribute) => GroupCodeValue[]; attrCodeItems: (a: Attribute) => (GroupCodeValue | "none")[]; codeValueOf: (v: GroupCodeValue | "none") => string; codeLabelOf: (v: GroupCodeValue | "none") => string; setAttrGroupCode: (a: Attribute, v: string | undefined) => void; setAttrCode: (a: Attribute, v: string) => void; setAttrDefaultValue: (a: Attribute, v: string) => void; isEmbedExpanded: (a: Attribute) => boolean; isMultiColFk: typeof isMultiColumnFk; hasColumnSlots: (a: Attribute) => boolean; setDbAt: (a: Attribute, i: number, patch: Record) => void; setDbLogicalAt: (a: Attribute, i: number, value: MultiLangText) => void; logicalPlaceholder: (a: Attribute, lang: keyof MultiLangText) => string; colSlotMeta: (a: Attribute, i: number) => { name?: string; physicalName?: string; dataType?: string; length?: number; scale?: number; shareable?: boolean; logicalName?: MultiLangText; } | undefined; fixedDataType: (a: Attribute, i: number) => string; fixedLength: (a: Attribute, i: number) => number | undefined; fixedScale: (a: Attribute, i: number) => number | undefined; slotFixedHint: (a: Attribute) => string; updatableItems: string[]; updatableLabel: (v: string) => string; updatableValue: (col: Attribute["dbAttrs"][number] | undefined) => string; setUpdatableAt: (a: Attribute, i: number, v: string) => void; setUpdatable: (a: Attribute, v: string) => void; insertableItems: string[]; insertableLabel: (v: string) => string; insertableValue: (col: Attribute["dbAttrs"][number] | undefined) => string; setInsertableAt: (a: Attribute, i: number, v: string) => void; notNullItems: string[]; notNullLabel: (v: string) => string; notNullValue: (col: Attribute["dbAttrs"][number] | undefined) => string; setNotNullAt: (a: Attribute, i: number, v: string) => void; setInsertable: (a: Attribute, v: string) => void; scopeEntities: ComputedRef; columnsById: ComputedRef>; sharedCandidates: ComputedRef<{ modelId: string; physical: string; isCurrency: boolean; ownerName: string | undefined; }[]>; sharedItems: () => string[]; sharedLabel: (v: string) => string; sharedValue: (col: Attribute["dbAttrs"][number] | undefined) => string; setSharedAt: (a: Attribute, i: number, v: string) => void; isShared: (col: Attribute["dbAttrs"][number] | undefined) => boolean; sharedPhysical: (col: Attribute["dbAttrs"][number]) => string; };