blob: 41a28ac1824f984d22348a9036e2276c3e8e286c [file] [log] [blame]
// Copyright 2025 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef IOS_CHROME_BROWSER_SNACKBAR_UI_BUNDLED_UI_SNACKBAR_VIEW_H_
#define IOS_CHROME_BROWSER_SNACKBAR_UI_BUNDLED_UI_SNACKBAR_VIEW_H_
#import <UIKit/UIKit.h>
@class SnackbarMessage;
@protocol SnackbarViewDelegate;
// A view that displays a snackbar message.
@interface SnackbarView : UIView
// The message to display.
@property(nonatomic, strong, readonly) SnackbarMessage* message;
// The delegate for this view.
@property(nonatomic, weak) id<SnackbarViewDelegate> delegate;
// The bottom offset for the snackbar.
@property(nonatomic, assign) CGFloat bottomOffset;
// Designated initializer.
- (instancetype)initWithMessage:(SnackbarMessage*)message
NS_DESIGNATED_INITIALIZER;
- (instancetype)init NS_UNAVAILABLE;
- (instancetype)initWithFrame:(CGRect)frame NS_UNAVAILABLE;
- (instancetype)initWithCoder:(NSCoder*)coder NS_UNAVAILABLE;
// Presents the snackbar.
- (void)presentAnimated:(BOOL)animated completion:(void (^)(void))completion;
// Dismisses the snackbar.
- (void)dismissAnimated:(BOOL)animated completion:(void (^)(void))completion;
@end
#endif // IOS_CHROME_BROWSER_SNACKBAR_UI_BUNDLED_UI_SNACKBAR_VIEW_H_