@umbraco/json-models-builders
Version:
Builders and models for Umbraco Sites
98 lines (97 loc) • 3.05 kB
TypeScript
import { MediaTypePropertyBuilder } from "./mediaTypePropertyBuilder";
import { MediaTypeContainerBuilder } from "./mediaTypeContainerBuilder";
import { MediaTypeAllowedMediaTypeBuilder } from "./mediaTypeAllowedMediaTypeBuilder";
import { MediaTypeCompositionBuilder } from "./mediaTypeCompositionBuilder";
export declare class MediaTypeBuilder {
alias: string;
name: string;
description: string;
icon: string;
allowedAsRoot: boolean;
variesByCulture: boolean;
variesBySegment: boolean;
collectionId: string;
isElement: boolean;
mediaTypePropertyBuilder: MediaTypePropertyBuilder[];
mediaTypeContainerBuilder: MediaTypeContainerBuilder[];
mediaTypeAllowedMediaTypeBuilder: MediaTypeAllowedMediaTypeBuilder[];
mediaTypeCompositionBuilder: MediaTypeCompositionBuilder[];
folderId: string;
id: string;
constructor();
withAlias(alias: string): this;
withName(name: string): this;
withDescription(description: string): this;
withIcon(icon: string): this;
withAllowedAsRoot(allowedAsRoot: boolean): this;
withVariesByCulture(variesByCulture: boolean): this;
withVariesBySegment(variesBySegment: boolean): this;
withIsElement(isElement: boolean): this;
addProperty(): MediaTypePropertyBuilder;
addContainer(): MediaTypeContainerBuilder;
addAllowedMediaType(): MediaTypeAllowedMediaTypeBuilder;
addComposition(): MediaTypeCompositionBuilder;
withId(id: string): this;
build(): {
alias: string;
name: string;
description: string;
icon: string;
allowedAsRoot: boolean;
variesByCulture: boolean;
variesBySegment: boolean;
collection: {
id: string;
} | null;
isElement: boolean;
properties: {
id: string;
container: {
id: string | null;
};
sortOrder: number;
alias: string;
name: string;
description: string;
dataType: {
id: string | null;
};
variesByCulture: boolean;
variesBySegment: boolean;
validation: {
mandatory: boolean;
mandatoryMessage: string;
regEx: string;
regExMessage: string;
};
appearance: {
labelOnTop: boolean;
};
}[];
containers: {
id: string | null;
parent: {
id: string;
} | null;
name: string;
type: string;
sortOrder: number;
}[];
allowedMediaTypes: {
mediaType: {
id: string | null;
};
sortOrder: number;
}[];
compositions: {
mediaType: {
id: string | null;
};
compositionType: string;
}[];
id: string;
folder: {
id: string;
} | null;
};
}