import type * as Data from '../../../data'; import type * as UID from '../../../uid'; import type { Constants, If, Intersect } from '../../../utils'; import type { Attribute } from '../..'; export interface ComponentProperties { component: TComponentUID; repeatable?: TRepeatable; } /** * Represents a component Strapi attribute along with its options */ export type Component = Intersect<[ Attribute.OfType<'component'>, ComponentProperties, Attribute.ConfigurableOption, Attribute.MinMaxOption, Attribute.PrivateOption, Attribute.RequiredOption, Attribute.WritableOption, Attribute.VisibleOption ]>; export type ComponentValue = Data.Component extends infer TComponentEntry ? If : never; export type GetComponentValue = TAttribute extends Component ? ComponentValue : never; export type ComponentTarget = TAttribute extends Component ? TComponentUID : never; //# sourceMappingURL=component.d.ts.map