1 package com.android.onboarding.flags 2 3 /** Interface for getting enabled state of different onboarding feature flags. */ 4 interface OnboardingFlagsProvider { 5 @Deprecated(message = "Replaced with a property", replaceWith = ReplaceWith("isContractEnabled")) isOnboardingContractEnablednull6 fun isOnboardingContractEnabled(): Boolean = isContractEnabled 7 8 /** 9 * Returns `true` if the onboarding contract architecture is being used across the onboarding 10 * flow. 11 */ 12 val isContractEnabled: Boolean 13 14 @Deprecated( 15 message = "Replaced with a property", 16 replaceWith = ReplaceWith("isNodeLoggingEnabled"), 17 ) 18 fun isOnboardingNodeLoggingEnabled(): Boolean = isNodeLoggingEnabled 19 20 /** Returns `true` if onboarding node logs should be uploaded remotely. */ 21 val isNodeLoggingEnabled: Boolean 22 23 /** Returns `true` if onboarding UI logging should be uploaded remotely. */ 24 val isUiLoggingEnabled: Boolean 25 26 /** Returns `true` if dimensions are being attached to logs. */ 27 val isDimensionLoggingEnabled: Boolean 28 /** 29 * Indicates that all onboarding components should activate the flagged changes regardless of 30 * other flag values. 31 */ 32 val isDebug: Boolean 33 34 /** Returns true if node transitions should be visualised in logcat. */ 35 val shouldVisualiseNodeTransitionsInLogcat: Boolean 36 } 37