blob: 331bef2a7499ede398f16053a04253b7f6351885 [file] [log] [blame]
// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'asset.dart' show FlutterHookResult;
import 'base/context.dart' show context;
import 'base/logger.dart' show Logger;
import 'build_info.dart' show TargetPlatform;
import 'build_system/build_system.dart' show Environment;
/// To not need `isolated/` imports, we use this interface to be passed around
/// everywhere. It's implementation can run the build and link hooks during a
/// Flutter build/run/test/etc.
FlutterHookRunner? get hookRunner => context.get<FlutterHookRunner>();
abstract interface class FlutterHookRunner {
Future<FlutterHookResult> runHooks({
required TargetPlatform targetPlatform,
required Environment environment,
Logger? logger,
});
}