store = $store ?? new Mutation_Store(); } /** Resolve with the variation post-type override before the shared post id type. */ public function resolve( array $meta ): Collection_Writer_Interface { if ( 'product_variation' === ( $meta['post_type'] ?? '' ) ) { return new Variation_Writer(); } switch ( $meta['id_type'] ?? '' ) { case 'order': return new Order_Writer( $this->store, new Order_Write_Payload() ); case 'user': return new Customer_Writer(); default: return new Null_Writer(); } } }