function build_style_directives_object(style_directives, expressions, context) {
	let normal_properties = [];
	let important_properties = [];

	for (const directive of style_directives) {
		const expression =
			directive.value === true
				? build_getter({ name: directive.name, type: 'Identifier' }, context.state)
				: build_attribute_value(directive.value, context, (value, metadata) =>
						metadata.has_call ? get_expression_id(expressions, value) : value
					).value;
		const property = b.init(directive.name, expression);

		if (directive.modifiers.includes('important')) {
			important_properties.push(property);
		} else {
			normal_properties.push(property);
		}
	}

	return important_properties.length
		? b.array([b.object(normal_properties), b.object(important_properties)])
		: b.object(normal_properties);
}
@param {AST.StyleDirective[]} style_directives
@param {Expression[]} expressions
@param {ComponentContext} context
@return {ObjectExpression | ArrayExpression}}